lusid-sdk 1.1.131__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 (1417) hide show
  1. lusid/__init__.py +1817 -135
  2. lusid/api/__init__.py +100 -2
  3. lusid/api/abor_api.py +2465 -0
  4. lusid/api/abor_configuration_api.py +945 -0
  5. lusid/api/address_key_definition_api.py +312 -284
  6. lusid/api/aggregation_api.py +486 -276
  7. lusid/api/allocations_api.py +452 -425
  8. lusid/api/amortisation_rule_sets_api.py +1101 -0
  9. lusid/api/application_metadata_api.py +282 -259
  10. lusid/api/blocks_api.py +428 -420
  11. lusid/api/calendars_api.py +1594 -1307
  12. lusid/api/chart_of_accounts_api.py +5931 -0
  13. lusid/api/complex_market_data_api.py +487 -325
  14. lusid/api/compliance_api.py +1796 -1181
  15. lusid/api/configuration_recipe_api.py +1528 -379
  16. lusid/api/conventions_api.py +1983 -0
  17. lusid/api/corporate_action_sources_api.py +1002 -925
  18. lusid/api/counterparties_api.py +770 -751
  19. lusid/api/custom_data_models_api.py +1043 -0
  20. lusid/api/custom_entities_api.py +1246 -1524
  21. lusid/api/custom_entity_definitions_api.py +408 -384
  22. lusid/api/custom_entity_types_api.py +414 -389
  23. lusid/api/cut_label_definitions_api.py +508 -476
  24. lusid/api/data_types_api.py +1072 -760
  25. lusid/api/derived_transaction_portfolios_api.py +215 -223
  26. lusid/api/entities_api.py +1214 -117
  27. lusid/api/executions_api.py +430 -422
  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 +924 -0
  34. lusid/api/instruments_api.py +2651 -1785
  35. lusid/api/legacy_compliance_api.py +1450 -0
  36. lusid/api/legal_entities_api.py +2078 -2197
  37. lusid/api/order_graph_api.py +371 -377
  38. lusid/api/order_instructions_api.py +746 -0
  39. lusid/api/order_management_api.py +1613 -245
  40. lusid/api/orders_api.py +430 -422
  41. lusid/api/packages_api.py +746 -0
  42. lusid/api/participations_api.py +428 -420
  43. lusid/api/persons_api.py +2036 -2030
  44. lusid/api/placements_api.py +428 -420
  45. lusid/api/portfolio_groups_api.py +2943 -3099
  46. lusid/api/portfolios_api.py +3915 -3161
  47. lusid/api/property_definitions_api.py +1158 -1238
  48. lusid/api/queryable_keys_api.py +116 -100
  49. lusid/api/quotes_api.py +1320 -538
  50. lusid/api/reconciliations_api.py +1904 -778
  51. lusid/api/reference_lists_api.py +410 -409
  52. lusid/api/reference_portfolio_api.py +604 -450
  53. lusid/api/relation_definitions_api.py +539 -0
  54. lusid/api/relations_api.py +415 -0
  55. lusid/api/relationship_definitions_api.py +510 -519
  56. lusid/api/relationships_api.py +217 -234
  57. lusid/api/schemas_api.py +387 -342
  58. lusid/api/scopes_api.py +228 -188
  59. lusid/api/scripted_translation_api.py +807 -815
  60. lusid/api/search_api.py +429 -443
  61. lusid/api/sequences_api.py +397 -424
  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 +1442 -294
  66. lusid/api/system_configuration_api.py +992 -155
  67. lusid/api/tax_rule_sets_api.py +901 -0
  68. lusid/api/timelines_api.py +1307 -0
  69. lusid/api/transaction_configuration_api.py +1111 -1148
  70. lusid/api/transaction_fees_api.py +936 -0
  71. lusid/api/transaction_portfolios_api.py +5819 -3540
  72. lusid/api/translation_api.py +365 -0
  73. lusid/api/workspace_api.py +3482 -0
  74. lusid/api_client.py +222 -140
  75. lusid/api_response.py +25 -0
  76. lusid/configuration.py +157 -86
  77. lusid/exceptions.py +17 -15
  78. lusid/extensions/__init__.py +20 -0
  79. lusid/extensions/api_client.py +774 -0
  80. lusid/extensions/api_client_factory.py +260 -0
  81. lusid/extensions/api_configuration.py +283 -0
  82. lusid/extensions/configuration_loaders.py +300 -0
  83. lusid/extensions/configuration_options.py +67 -0
  84. lusid/extensions/file_access_token.py +42 -0
  85. lusid/{utilities → extensions}/proxy_config.py +24 -6
  86. lusid/{utilities → extensions}/refreshing_token.py +82 -35
  87. lusid/extensions/rest.py +352 -0
  88. lusid/extensions/retry.py +429 -0
  89. lusid/extensions/socket_keep_alive.py +52 -0
  90. lusid/extensions/tcp_keep_alive_connector.py +113 -0
  91. lusid/models/__init__.py +1695 -128
  92. lusid/models/a2_b_breakdown.py +66 -180
  93. lusid/models/a2_b_category.py +63 -149
  94. lusid/models/a2_b_data_record.py +181 -535
  95. lusid/models/a2_b_movement_record.py +195 -630
  96. lusid/models/abor.py +165 -0
  97. lusid/models/abor_configuration.py +167 -0
  98. lusid/models/abor_configuration_properties.py +123 -0
  99. lusid/models/abor_configuration_request.py +153 -0
  100. lusid/models/abor_properties.py +123 -0
  101. lusid/models/abor_request.py +139 -0
  102. lusid/models/accept_estimate_valuation_point_response.py +108 -0
  103. lusid/models/access_controlled_action.py +90 -216
  104. lusid/models/access_controlled_resource.py +108 -278
  105. lusid/models/access_metadata_operation.py +87 -229
  106. lusid/models/access_metadata_value.py +61 -161
  107. lusid/models/account.py +139 -0
  108. lusid/models/account_properties.py +123 -0
  109. lusid/models/accounted_transaction.py +96 -0
  110. lusid/models/accounting_method.py +52 -0
  111. lusid/models/accounts_upsert_response.py +118 -0
  112. lusid/models/accumulation_event.py +90 -288
  113. lusid/models/action_id.py +58 -199
  114. lusid/models/add_business_days_to_date_request.py +66 -209
  115. lusid/models/add_business_days_to_date_response.py +55 -122
  116. lusid/models/additional_payment.py +61 -223
  117. lusid/models/address_definition.py +100 -279
  118. lusid/models/address_key_compliance_parameter.py +76 -161
  119. lusid/models/address_key_definition.py +77 -217
  120. lusid/models/address_key_filter.py +71 -185
  121. lusid/models/address_key_list.py +76 -165
  122. lusid/models/address_key_list_compliance_parameter.py +80 -159
  123. lusid/models/address_key_option_definition.py +74 -288
  124. lusid/models/adjust_global_commitment_event.py +101 -0
  125. lusid/models/adjust_holding.py +104 -211
  126. lusid/models/adjust_holding_for_date_request.py +112 -280
  127. lusid/models/adjust_holding_request.py +110 -245
  128. lusid/models/aggregate_spec.py +70 -191
  129. lusid/models/aggregated_return.py +109 -368
  130. lusid/models/aggregated_returns_dispersion_request.py +105 -286
  131. lusid/models/aggregated_returns_request.py +131 -398
  132. lusid/models/aggregated_returns_response.py +96 -179
  133. lusid/models/aggregated_transactions_request.py +139 -0
  134. lusid/models/aggregation_context.py +58 -120
  135. lusid/models/aggregation_measure_failure_detail.py +83 -233
  136. lusid/models/aggregation_op.py +50 -0
  137. lusid/models/aggregation_options.py +56 -182
  138. lusid/models/aggregation_query.py +110 -435
  139. lusid/models/aggregation_type.py +44 -0
  140. lusid/models/alias.py +79 -0
  141. lusid/models/allocation.py +210 -732
  142. lusid/models/allocation_request.py +178 -606
  143. lusid/models/allocation_service_run_response.py +110 -0
  144. lusid/models/allocation_set_request.py +67 -121
  145. lusid/models/amortisation_event.py +83 -261
  146. lusid/models/amortisation_rule.py +112 -0
  147. lusid/models/amortisation_rule_set.py +141 -0
  148. lusid/models/amount.py +77 -0
  149. lusid/models/annul_quotes_response.py +102 -212
  150. lusid/models/annul_single_structured_data_response.py +75 -181
  151. lusid/models/annul_structured_data_response.py +102 -212
  152. lusid/models/applicable_instrument_event.py +138 -0
  153. lusid/models/asset_class.py +44 -0
  154. lusid/models/asset_leg.py +60 -156
  155. lusid/models/barrier.py +65 -223
  156. lusid/models/basket.py +88 -224
  157. lusid/models/basket_identifier.py +60 -219
  158. lusid/models/batch_adjust_holdings_response.py +131 -211
  159. lusid/models/batch_update_user_review_for_comparison_result_request.py +89 -0
  160. lusid/models/batch_update_user_review_for_comparison_result_response.py +154 -0
  161. lusid/models/batch_upsert_dates_for_calendar_response.py +154 -0
  162. lusid/models/batch_upsert_instrument_properties_response.py +104 -218
  163. lusid/models/batch_upsert_portfolio_access_metadata_request.py +100 -0
  164. lusid/models/batch_upsert_portfolio_access_metadata_response.py +130 -0
  165. lusid/models/batch_upsert_portfolio_access_metadata_response_item.py +100 -0
  166. lusid/models/batch_upsert_portfolio_transactions_response.py +131 -211
  167. lusid/models/batch_upsert_property_definition_properties_response.py +100 -218
  168. lusid/models/block.py +136 -539
  169. lusid/models/block_and_order_id_request.py +63 -151
  170. lusid/models/block_and_orders.py +68 -151
  171. lusid/models/block_and_orders_create_request.py +62 -129
  172. lusid/models/block_and_orders_request.py +120 -400
  173. lusid/models/block_request.py +111 -443
  174. lusid/models/block_set_request.py +67 -121
  175. lusid/models/blocked_order_request.py +116 -390
  176. lusid/models/bond.py +162 -567
  177. lusid/models/bond_conversion_entry.py +83 -0
  178. lusid/models/bond_conversion_schedule.py +138 -0
  179. lusid/models/bond_coupon_event.py +88 -258
  180. lusid/models/bond_default_event.py +77 -162
  181. lusid/models/bond_principal_event.py +88 -258
  182. lusid/models/bonus_issue_event.py +174 -0
  183. lusid/models/book_transactions_request.py +105 -0
  184. lusid/models/book_transactions_response.py +115 -0
  185. lusid/models/bool_compliance_parameter.py +76 -159
  186. lusid/models/bool_list_compliance_parameter.py +80 -159
  187. lusid/models/branch_step.py +86 -196
  188. lusid/models/branch_step_request.py +106 -0
  189. lusid/models/break_code_source.py +81 -0
  190. lusid/models/bucketed_cash_flow_request.py +180 -0
  191. lusid/models/bucketed_cash_flow_response.py +137 -0
  192. lusid/models/bucketing_schedule.py +82 -0
  193. lusid/models/calculation_info.py +81 -0
  194. lusid/models/calendar.py +106 -304
  195. lusid/models/calendar_date.py +87 -402
  196. lusid/models/calendar_dependency.py +76 -161
  197. lusid/models/call_on_intermediate_securities_event.py +147 -0
  198. lusid/models/cancel_order_and_move_remaining_result.py +92 -0
  199. lusid/models/cancel_orders_and_move_remaining_request.py +91 -0
  200. lusid/models/cancel_orders_and_move_remaining_response.py +161 -0
  201. lusid/models/cancel_orders_response.py +161 -0
  202. lusid/models/cancel_placements_response.py +161 -0
  203. lusid/models/cancel_single_holding_adjustment_request.py +104 -0
  204. lusid/models/cancelled_order_result.py +81 -0
  205. lusid/models/cancelled_placement_result.py +91 -0
  206. lusid/models/cap_floor.py +113 -290
  207. lusid/models/capital_distribution_event.py +125 -0
  208. lusid/models/cash.py +101 -0
  209. lusid/models/cash_and_security_offer_election.py +98 -0
  210. lusid/models/cash_dependency.py +79 -194
  211. lusid/models/cash_dividend_event.py +103 -286
  212. lusid/models/cash_election.py +76 -311
  213. lusid/models/cash_flow_event.py +83 -194
  214. lusid/models/cash_flow_lineage.py +94 -271
  215. lusid/models/cash_flow_value.py +93 -284
  216. lusid/models/cash_flow_value_set.py +89 -159
  217. lusid/models/cash_ladder_record.py +61 -211
  218. lusid/models/cash_offer_election.py +85 -0
  219. lusid/models/cash_perpetual.py +81 -226
  220. lusid/models/cds_credit_event.py +113 -0
  221. lusid/models/cds_flow_conventions.py +116 -509
  222. lusid/models/cds_index.py +120 -379
  223. lusid/models/cds_protection_detail_specification.py +60 -225
  224. lusid/models/cdx_credit_event.py +122 -0
  225. lusid/models/change.py +113 -352
  226. lusid/models/change_history.py +93 -294
  227. lusid/models/change_history_action.py +39 -0
  228. lusid/models/change_interval.py +131 -0
  229. lusid/models/change_interval_with_order_management_detail.py +145 -0
  230. lusid/models/change_item.py +83 -247
  231. lusid/models/chart_of_accounts.py +143 -0
  232. lusid/models/chart_of_accounts_properties.py +123 -0
  233. lusid/models/chart_of_accounts_request.py +128 -0
  234. lusid/models/check_step.py +95 -228
  235. lusid/models/check_step_request.py +106 -0
  236. lusid/models/cleardown_module_details.py +103 -0
  237. lusid/models/cleardown_module_request.py +125 -0
  238. lusid/models/cleardown_module_response.py +147 -0
  239. lusid/models/cleardown_module_rule.py +102 -0
  240. lusid/models/cleardown_module_rules_updated_response.py +118 -0
  241. lusid/models/client.py +83 -0
  242. lusid/models/close_event.py +79 -192
  243. lusid/models/close_period_diary_entry_request.py +157 -0
  244. lusid/models/closed_period.py +136 -0
  245. lusid/models/comparison_attribute_value_pair.py +84 -0
  246. lusid/models/complete_portfolio.py +152 -490
  247. lusid/models/complete_relation.py +104 -0
  248. lusid/models/complete_relationship.py +91 -373
  249. lusid/models/complex_bond.py +145 -321
  250. lusid/models/complex_market_data.py +85 -146
  251. lusid/models/complex_market_data_id.py +77 -269
  252. lusid/models/compliance_breached_order_info.py +91 -0
  253. lusid/models/compliance_parameter.py +90 -150
  254. lusid/models/compliance_parameter_type.py +58 -0
  255. lusid/models/compliance_rule.py +145 -0
  256. lusid/models/compliance_rule_breakdown.py +87 -252
  257. lusid/models/compliance_rule_breakdown_request.py +87 -247
  258. lusid/models/compliance_rule_response.py +152 -406
  259. lusid/models/compliance_rule_result.py +99 -0
  260. lusid/models/compliance_rule_result_detail.py +94 -409
  261. lusid/models/compliance_rule_result_portfolio_detail.py +60 -154
  262. lusid/models/compliance_rule_result_v2.py +71 -245
  263. lusid/models/compliance_rule_template.py +161 -0
  264. lusid/models/compliance_rule_upsert_request.py +186 -0
  265. lusid/models/compliance_rule_upsert_response.py +90 -0
  266. lusid/models/compliance_run_configuration.py +81 -0
  267. lusid/models/compliance_run_info.py +89 -0
  268. lusid/models/compliance_run_info_v2.py +67 -248
  269. lusid/models/compliance_step.py +81 -140
  270. lusid/models/compliance_step_request.py +107 -0
  271. lusid/models/compliance_step_type.py +43 -0
  272. lusid/models/compliance_step_type_request.py +42 -0
  273. lusid/models/compliance_summary_rule_result.py +97 -337
  274. lusid/models/compliance_summary_rule_result_request.py +97 -343
  275. lusid/models/compliance_template.py +92 -248
  276. lusid/models/compliance_template_parameter.py +58 -196
  277. lusid/models/compliance_template_variation.py +104 -287
  278. lusid/models/compliance_template_variation_dto.py +120 -0
  279. lusid/models/compliance_template_variation_request.py +120 -0
  280. lusid/models/component_filter.py +93 -0
  281. lusid/models/component_transaction.py +107 -0
  282. lusid/models/composite_breakdown.py +73 -181
  283. lusid/models/composite_breakdown_request.py +100 -276
  284. lusid/models/composite_breakdown_response.py +91 -181
  285. lusid/models/composite_dispersion.py +119 -334
  286. lusid/models/composite_dispersion_response.py +96 -179
  287. lusid/models/compounding.py +79 -294
  288. lusid/models/configuration_recipe.py +117 -357
  289. lusid/models/constant_volatility_surface.py +88 -263
  290. lusid/models/constituents_adjustment_header.py +74 -180
  291. lusid/models/contract_details.py +109 -0
  292. lusid/models/contract_for_difference.py +95 -425
  293. lusid/models/contract_initialisation_event.py +107 -0
  294. lusid/models/contribution_to_non_passing_rule_detail.py +97 -0
  295. lusid/models/corporate_action.py +85 -308
  296. lusid/models/corporate_action_source.py +107 -299
  297. lusid/models/corporate_action_transition.py +72 -150
  298. lusid/models/corporate_action_transition_component.py +62 -257
  299. lusid/models/corporate_action_transition_component_request.py +58 -187
  300. lusid/models/corporate_action_transition_request.py +72 -148
  301. lusid/models/counterparty_agreement.py +76 -287
  302. lusid/models/counterparty_risk_information.py +81 -192
  303. lusid/models/counterparty_signatory.py +60 -156
  304. lusid/models/create_address_key_definition_request.py +56 -158
  305. lusid/models/create_amortisation_rule_set_request.py +110 -0
  306. lusid/models/create_calendar_request.py +97 -257
  307. lusid/models/create_closed_period_request.py +104 -0
  308. lusid/models/create_compliance_template_request.py +103 -0
  309. lusid/models/create_corporate_action_source_request.py +103 -286
  310. lusid/models/create_custom_entity_type_request.py +82 -237
  311. lusid/models/create_cut_label_definition_request.py +88 -251
  312. lusid/models/create_data_map_request.py +87 -0
  313. lusid/models/create_data_type_request.py +146 -457
  314. lusid/models/create_date_request.py +114 -363
  315. lusid/models/create_derived_property_definition_request.py +84 -326
  316. lusid/models/create_derived_transaction_portfolio_request.py +174 -530
  317. lusid/models/create_group_reconciliation_comparison_ruleset_request.py +105 -0
  318. lusid/models/create_group_reconciliation_definition_request.py +121 -0
  319. lusid/models/create_portfolio_details.py +58 -120
  320. lusid/models/create_portfolio_group_request.py +120 -309
  321. lusid/models/create_property_definition_request.py +108 -419
  322. lusid/models/create_recipe_request.py +98 -0
  323. lusid/models/create_reconciliation_request.py +148 -0
  324. lusid/models/create_reference_portfolio_request.py +105 -312
  325. lusid/models/create_relation_definition_request.py +103 -0
  326. lusid/models/create_relation_request.py +79 -0
  327. lusid/models/create_relationship_definition_request.py +115 -432
  328. lusid/models/create_relationship_request.py +90 -233
  329. lusid/models/create_sequence_request.py +108 -322
  330. lusid/models/create_simple_position_portfolio_request.py +196 -0
  331. lusid/models/create_staging_rule_set_request.py +94 -0
  332. lusid/models/create_tax_rule_set_request.py +111 -0
  333. lusid/models/create_timeline_request.py +110 -0
  334. lusid/models/create_trade_tickets_response.py +72 -151
  335. lusid/models/create_transaction_portfolio_request.py +167 -570
  336. lusid/models/create_unit_definition.py +86 -236
  337. lusid/models/credit_default_swap.py +125 -381
  338. lusid/models/credit_premium_cash_flow_event.py +110 -0
  339. lusid/models/credit_rating.py +70 -173
  340. lusid/models/credit_spread_curve_data.py +112 -415
  341. lusid/models/credit_support_annex.py +76 -427
  342. lusid/models/criterion_type.py +39 -0
  343. lusid/models/currency_and_amount.py +56 -148
  344. lusid/models/curve_options.py +118 -0
  345. lusid/models/custodian_account.py +96 -391
  346. lusid/models/custodian_account_properties.py +123 -0
  347. lusid/models/custodian_account_request.py +156 -0
  348. lusid/models/custodian_accounts_upsert_response.py +118 -0
  349. lusid/models/custom_data_model.py +97 -0
  350. lusid/models/custom_data_model_criteria.py +142 -0
  351. lusid/models/custom_data_model_identifier_type_specification.py +79 -0
  352. lusid/models/custom_data_model_identifier_type_specification_with_display_name.py +86 -0
  353. lusid/models/custom_data_model_property_specification.py +79 -0
  354. lusid/models/custom_data_model_property_specification_with_display_name.py +86 -0
  355. lusid/models/custom_entity_definition.py +103 -318
  356. lusid/models/custom_entity_definition_request.py +82 -237
  357. lusid/models/custom_entity_entity.py +154 -0
  358. lusid/models/custom_entity_field.py +76 -217
  359. lusid/models/custom_entity_field_definition.py +74 -291
  360. lusid/models/custom_entity_id.py +94 -275
  361. lusid/models/custom_entity_request.py +81 -223
  362. lusid/models/custom_entity_response.py +127 -377
  363. lusid/models/custom_entity_type.py +103 -318
  364. lusid/models/cut_label_definition.py +114 -319
  365. lusid/models/cut_local_time.py +58 -149
  366. lusid/models/data_definition.py +112 -0
  367. lusid/models/data_map_key.py +109 -0
  368. lusid/models/data_mapping.py +90 -0
  369. lusid/models/data_model_summary.py +120 -0
  370. lusid/models/data_scope.py +88 -0
  371. lusid/models/data_type.py +154 -472
  372. lusid/models/data_type_entity.py +139 -0
  373. lusid/models/data_type_summary.py +120 -393
  374. lusid/models/data_type_value_range.py +38 -0
  375. lusid/models/date_attributes.py +143 -366
  376. lusid/models/date_or_diary_entry.py +99 -0
  377. lusid/models/date_range.py +62 -150
  378. lusid/models/date_time_comparison_type.py +38 -0
  379. lusid/models/date_time_compliance_parameter.py +77 -160
  380. lusid/models/date_time_list_compliance_parameter.py +80 -159
  381. lusid/models/day_month.py +79 -0
  382. lusid/models/day_of_week.py +20 -102
  383. lusid/models/decimal_compliance_parameter.py +76 -159
  384. lusid/models/decimal_list.py +76 -165
  385. lusid/models/decimal_list_compliance_parameter.py +80 -159
  386. lusid/models/decorated_compliance_run_summary.py +68 -151
  387. lusid/models/delete_accounts_response.py +103 -0
  388. lusid/models/delete_custodian_accounts_response.py +111 -0
  389. lusid/models/delete_instrument_properties_response.py +76 -154
  390. lusid/models/delete_instrument_response.py +83 -184
  391. lusid/models/delete_instruments_response.py +98 -184
  392. lusid/models/delete_modes.py +38 -0
  393. lusid/models/delete_relation_request.py +79 -0
  394. lusid/models/delete_relationship_request.py +90 -233
  395. lusid/models/deleted_entity_response.py +104 -214
  396. lusid/models/dependency_source_filter.py +95 -193
  397. lusid/models/described_address_key.py +89 -0
  398. lusid/models/dialect.py +68 -178
  399. lusid/models/dialect_id.py +92 -325
  400. lusid/models/dialect_schema.py +61 -162
  401. lusid/models/diary_entry.py +163 -0
  402. lusid/models/diary_entry_request.py +137 -0
  403. lusid/models/discount_factor_curve_data.py +94 -291
  404. lusid/models/discounting_dependency.py +79 -194
  405. lusid/models/discounting_method.py +39 -0
  406. lusid/models/dividend_option_event.py +115 -349
  407. lusid/models/dividend_reinvestment_event.py +115 -351
  408. lusid/models/drawdown_event.py +107 -0
  409. lusid/models/early_redemption_election.py +81 -0
  410. lusid/models/early_redemption_event.py +132 -0
  411. lusid/models/economic_dependency.py +85 -145
  412. lusid/models/economic_dependency_type.py +50 -0
  413. lusid/models/economic_dependency_with_complex_market_data.py +64 -151
  414. lusid/models/economic_dependency_with_quote.py +69 -179
  415. lusid/models/effective_range.py +79 -0
  416. lusid/models/election_specification.py +81 -0
  417. lusid/models/eligibility_calculation.py +81 -0
  418. lusid/models/empty_model_options.py +74 -129
  419. lusid/models/entity_identifier.py +62 -184
  420. lusid/models/equity.py +89 -220
  421. lusid/models/equity_all_of_identifiers.py +86 -410
  422. lusid/models/equity_curve_by_prices_data.py +94 -291
  423. lusid/models/equity_curve_dependency.py +83 -276
  424. lusid/models/equity_model_options.py +76 -164
  425. lusid/models/equity_option.py +156 -549
  426. lusid/models/equity_swap.py +125 -482
  427. lusid/models/equity_vol_dependency.py +83 -270
  428. lusid/models/equity_vol_surface_data.py +104 -262
  429. lusid/models/error_detail.py +80 -211
  430. lusid/models/event_date_range.py +57 -150
  431. lusid/models/ex_dividend_configuration.py +60 -216
  432. lusid/models/exchange_traded_option.py +93 -256
  433. lusid/models/exchange_traded_option_contract_details.py +99 -530
  434. lusid/models/execution.py +147 -668
  435. lusid/models/execution_request.py +122 -572
  436. lusid/models/execution_set_request.py +67 -121
  437. lusid/models/exercise_event.py +86 -223
  438. lusid/models/exotic_instrument.py +82 -194
  439. lusid/models/expanded_group.py +124 -335
  440. lusid/models/expiry_event.py +77 -162
  441. lusid/models/external_fee_component_filter.py +102 -0
  442. lusid/models/fee.py +223 -0
  443. lusid/models/fee_accrual.py +113 -0
  444. lusid/models/fee_properties.py +123 -0
  445. lusid/models/fee_request.py +192 -0
  446. lusid/models/fee_rule.py +146 -0
  447. lusid/models/fee_rule_upsert_request.py +150 -0
  448. lusid/models/fee_rule_upsert_response.py +105 -0
  449. lusid/models/fee_transaction_template_specification.py +87 -0
  450. lusid/models/fee_type.py +123 -0
  451. lusid/models/fee_type_request.py +113 -0
  452. lusid/models/field_definition.py +72 -190
  453. lusid/models/field_schema.py +86 -242
  454. lusid/models/field_value.py +75 -160
  455. lusid/models/file_response.py +70 -174
  456. lusid/models/filter_predicate_compliance_parameter.py +76 -162
  457. lusid/models/filter_step.py +86 -196
  458. lusid/models/filter_step_request.py +106 -0
  459. lusid/models/fixed_leg.py +98 -282
  460. lusid/models/fixed_leg_all_of_overrides.py +68 -149
  461. lusid/models/fixed_schedule.py +139 -0
  462. lusid/models/flexible_deposit.py +113 -0
  463. lusid/models/flexible_loan.py +91 -258
  464. lusid/models/float_schedule.py +165 -0
  465. lusid/models/floating_leg.py +112 -344
  466. lusid/models/flow_convention_name.py +63 -188
  467. lusid/models/flow_conventions.py +136 -573
  468. lusid/models/forward_rate_agreement.py +93 -351
  469. lusid/models/from_recipe.py +89 -0
  470. lusid/models/fund.py +195 -0
  471. lusid/models/fund_amount.py +77 -0
  472. lusid/models/fund_configuration.py +201 -0
  473. lusid/models/fund_configuration_properties.py +123 -0
  474. lusid/models/fund_configuration_request.py +171 -0
  475. lusid/models/fund_details.py +82 -0
  476. lusid/models/fund_id_list.py +107 -0
  477. lusid/models/fund_pnl_breakdown.py +118 -0
  478. lusid/models/fund_previous_nav.py +77 -0
  479. lusid/models/fund_properties.py +123 -0
  480. lusid/models/fund_request.py +178 -0
  481. lusid/models/fund_share_class.py +99 -301
  482. lusid/models/fund_valuation_point_data.py +154 -0
  483. lusid/models/funding_leg.py +92 -254
  484. lusid/models/funding_leg_options.py +99 -0
  485. lusid/models/future.py +115 -383
  486. lusid/models/future_expiry_event.py +108 -0
  487. lusid/models/future_mark_to_market_event.py +108 -0
  488. lusid/models/futures_contract_details.py +127 -532
  489. lusid/models/fx_conventions.py +58 -193
  490. lusid/models/fx_dependency.py +81 -226
  491. lusid/models/fx_forward.py +102 -476
  492. lusid/models/fx_forward_curve_by_quote_reference.py +117 -382
  493. lusid/models/fx_forward_curve_data.py +98 -355
  494. lusid/models/fx_forward_model_options.py +94 -237
  495. lusid/models/fx_forward_pips_curve_data.py +98 -355
  496. lusid/models/fx_forward_settlement_event.py +130 -472
  497. lusid/models/fx_forward_tenor_curve_data.py +120 -415
  498. lusid/models/fx_forward_tenor_pips_curve_data.py +120 -415
  499. lusid/models/fx_forwards_dependency.py +83 -264
  500. lusid/models/fx_linked_notional_schedule.py +93 -250
  501. lusid/models/fx_option.py +162 -624
  502. lusid/models/fx_rate_schedule.py +119 -0
  503. lusid/models/fx_swap.py +92 -219
  504. lusid/models/fx_tenor_convention.py +56 -161
  505. lusid/models/fx_vol_dependency.py +83 -264
  506. lusid/models/fx_vol_surface_data.py +104 -262
  507. lusid/models/general_ledger_profile_mapping.py +86 -0
  508. lusid/models/general_ledger_profile_request.py +120 -0
  509. lusid/models/general_ledger_profile_response.py +154 -0
  510. lusid/models/generated_event_diagnostics.py +83 -0
  511. lusid/models/get_cds_flow_conventions_response.py +123 -0
  512. lusid/models/get_complex_market_data_response.py +114 -211
  513. lusid/models/get_counterparty_agreement_response.py +100 -210
  514. lusid/models/get_credit_support_annex_response.py +100 -210
  515. lusid/models/get_data_map_response.py +137 -0
  516. lusid/models/get_flow_conventions_response.py +123 -0
  517. lusid/models/get_index_convention_response.py +123 -0
  518. lusid/models/get_instruments_response.py +114 -211
  519. lusid/models/get_quotes_response.py +133 -241
  520. lusid/models/get_recipe_composer_response.py +103 -0
  521. lusid/models/get_recipe_response.py +78 -178
  522. lusid/models/get_reference_portfolio_constituents_response.py +120 -316
  523. lusid/models/get_structured_result_data_response.py +137 -0
  524. lusid/models/get_virtual_document_response.py +137 -0
  525. lusid/models/group_by_selector_compliance_parameter.py +76 -162
  526. lusid/models/group_by_step.py +86 -196
  527. lusid/models/group_by_step_request.py +106 -0
  528. lusid/models/group_calculation_compliance_parameter.py +99 -0
  529. lusid/models/group_filter_predicate_compliance_parameter.py +76 -162
  530. lusid/models/group_filter_step.py +86 -228
  531. lusid/models/group_filter_step_request.py +106 -0
  532. lusid/models/group_of_market_data_key_rules.py +64 -158
  533. lusid/models/group_reconciliation_aggregate_attribute_rule.py +92 -0
  534. lusid/models/group_reconciliation_aggregate_attribute_values.py +94 -0
  535. lusid/models/group_reconciliation_aggregate_comparison_rule_operand.py +79 -0
  536. lusid/models/group_reconciliation_comparison_result.py +156 -0
  537. lusid/models/group_reconciliation_comparison_rule_string_value_map.py +81 -0
  538. lusid/models/group_reconciliation_comparison_rule_tolerance.py +79 -0
  539. lusid/models/group_reconciliation_comparison_ruleset.py +133 -0
  540. lusid/models/group_reconciliation_core_attribute_rule.py +103 -0
  541. lusid/models/group_reconciliation_core_attribute_values.py +94 -0
  542. lusid/models/group_reconciliation_core_comparison_rule_operand.py +79 -0
  543. lusid/models/group_reconciliation_date_pair.py +89 -0
  544. lusid/models/group_reconciliation_dates.py +86 -0
  545. lusid/models/group_reconciliation_definition.py +144 -0
  546. lusid/models/group_reconciliation_definition_comparison_ruleset_ids.py +91 -0
  547. lusid/models/group_reconciliation_definition_currencies.py +79 -0
  548. lusid/models/group_reconciliation_definition_portfolio_entity_ids.py +94 -0
  549. lusid/models/group_reconciliation_definition_recipe_ids.py +86 -0
  550. lusid/models/group_reconciliation_instance_id.py +79 -0
  551. lusid/models/group_reconciliation_result_statuses.py +97 -0
  552. lusid/models/group_reconciliation_result_types.py +104 -0
  553. lusid/models/group_reconciliation_review_statuses.py +104 -0
  554. lusid/models/group_reconciliation_run_details.py +84 -0
  555. lusid/models/group_reconciliation_run_request.py +83 -0
  556. lusid/models/group_reconciliation_run_response.py +85 -0
  557. lusid/models/group_reconciliation_summary.py +129 -0
  558. lusid/models/group_reconciliation_user_review.py +120 -0
  559. lusid/models/group_reconciliation_user_review_add.py +96 -0
  560. lusid/models/group_reconciliation_user_review_break_code.py +88 -0
  561. lusid/models/group_reconciliation_user_review_comment.py +88 -0
  562. lusid/models/group_reconciliation_user_review_match_key.py +88 -0
  563. lusid/models/group_reconciliation_user_review_remove.py +96 -0
  564. lusid/models/grouped_result_of_address_key.py +97 -0
  565. lusid/models/holding_adjustment.py +124 -308
  566. lusid/models/holding_adjustment_with_date.py +127 -340
  567. lusid/models/holding_context.py +54 -122
  568. lusid/models/holding_contributor.py +65 -121
  569. lusid/models/holding_ids_request.py +77 -0
  570. lusid/models/holding_pricing_info.py +118 -0
  571. lusid/models/holdings_adjustment.py +95 -254
  572. lusid/models/holdings_adjustment_header.py +85 -222
  573. lusid/models/i_unit_definition_dto.py +88 -212
  574. lusid/models/id_selector_definition.py +78 -222
  575. lusid/models/identifier_part_schema.py +77 -290
  576. lusid/models/index_convention.py +103 -383
  577. lusid/models/index_model_options.py +83 -167
  578. lusid/models/index_projection_dependency.py +83 -270
  579. lusid/models/industry_classifier.py +63 -167
  580. lusid/models/inflation_fixing_dependency.py +81 -232
  581. lusid/models/inflation_index_conventions.py +74 -302
  582. lusid/models/inflation_leg.py +123 -450
  583. lusid/models/inflation_linked_bond.py +171 -598
  584. lusid/models/inflation_swap.py +106 -254
  585. lusid/models/informational_error_event.py +81 -232
  586. lusid/models/informational_event.py +89 -257
  587. lusid/models/inline_valuation_request.py +153 -492
  588. lusid/models/inline_valuations_reconciliation_request.py +85 -211
  589. lusid/models/input_transition.py +56 -155
  590. lusid/models/instrument.py +175 -536
  591. lusid/models/instrument_capabilities.py +141 -0
  592. lusid/models/instrument_cash_flow.py +115 -0
  593. lusid/models/instrument_definition.py +102 -246
  594. lusid/models/instrument_definition_format.py +58 -196
  595. lusid/models/instrument_delete_modes.py +38 -0
  596. lusid/models/instrument_entity.py +154 -0
  597. lusid/models/instrument_event.py +122 -154
  598. lusid/models/instrument_event_configuration.py +65 -148
  599. lusid/models/instrument_event_holder.py +126 -455
  600. lusid/models/instrument_event_instruction.py +151 -0
  601. lusid/models/instrument_event_instruction_request.py +102 -0
  602. lusid/models/instrument_event_instructions_response.py +115 -0
  603. lusid/models/instrument_event_type.py +90 -0
  604. lusid/models/instrument_id_type_descriptor.py +58 -190
  605. lusid/models/instrument_id_value.py +57 -158
  606. lusid/models/instrument_leg.py +85 -138
  607. lusid/models/instrument_list.py +76 -165
  608. lusid/models/instrument_list_compliance_parameter.py +80 -159
  609. lusid/models/instrument_match.py +81 -151
  610. lusid/models/instrument_models.py +79 -179
  611. lusid/models/instrument_payment_diary.py +139 -0
  612. lusid/models/instrument_payment_diary_leg.py +99 -0
  613. lusid/models/instrument_payment_diary_row.py +140 -0
  614. lusid/models/instrument_properties.py +100 -210
  615. lusid/models/instrument_resolution_detail.py +127 -0
  616. lusid/models/instrument_search_property.py +56 -158
  617. lusid/models/instrument_type.py +79 -0
  618. lusid/models/interest_rate_swap.py +113 -317
  619. lusid/models/interest_rate_swaption.py +93 -291
  620. lusid/models/intermediate_compliance_step.py +118 -0
  621. lusid/models/intermediate_compliance_step_request.py +106 -0
  622. lusid/models/intermediate_securities_distribution_event.py +148 -0
  623. lusid/models/ir_vol_cube_data.py +104 -262
  624. lusid/models/ir_vol_dependency.py +81 -232
  625. lusid/models/is_business_day_response.py +57 -152
  626. lusid/models/journal_entry_line.py +248 -0
  627. lusid/models/journal_entry_lines_query_parameters.py +117 -0
  628. lusid/models/label_value_set.py +54 -124
  629. lusid/models/lapse_election.py +81 -0
  630. lusid/models/leg_definition.py +146 -614
  631. lusid/models/legal_entity.py +161 -389
  632. lusid/models/level_step.py +57 -156
  633. lusid/models/life_cycle_event_lineage.py +87 -241
  634. lusid/models/life_cycle_event_value.py +89 -219
  635. lusid/models/lineage_member.py +72 -271
  636. lusid/models/link.py +65 -217
  637. lusid/models/list_aggregation_reconciliation.py +76 -206
  638. lusid/models/list_aggregation_response.py +114 -321
  639. lusid/models/list_complex_market_data_with_meta_data_response.py +94 -0
  640. lusid/models/loan_facility.py +115 -0
  641. lusid/models/loan_interest_repayment_event.py +105 -0
  642. lusid/models/loan_period.py +57 -180
  643. lusid/models/lock_period_diary_entry_request.py +99 -0
  644. lusid/models/lusid_instrument.py +106 -160
  645. lusid/models/lusid_problem_details.py +98 -328
  646. lusid/models/lusid_trade_ticket.py +158 -634
  647. lusid/models/lusid_unique_id.py +56 -161
  648. lusid/models/lusid_validation_problem_details.py +109 -357
  649. lusid/models/mapped_string.py +75 -204
  650. lusid/models/mapping.py +96 -276
  651. lusid/models/mapping_rule.py +99 -303
  652. lusid/models/mark_to_market_conventions.py +82 -0
  653. lusid/models/market_context.py +114 -238
  654. lusid/models/market_context_suppliers.py +62 -236
  655. lusid/models/market_data_key_rule.py +119 -457
  656. lusid/models/market_data_options.py +75 -135
  657. lusid/models/market_data_options_type.py +37 -0
  658. lusid/models/market_data_overrides.py +82 -151
  659. lusid/models/market_data_specific_rule.py +120 -489
  660. lusid/models/market_data_type.py +50 -0
  661. lusid/models/market_observable_type.py +41 -0
  662. lusid/models/market_options.py +111 -313
  663. lusid/models/market_quote.py +63 -161
  664. lusid/models/mastered_instrument.py +147 -0
  665. lusid/models/match_criterion.py +103 -0
  666. lusid/models/maturity_event.py +77 -162
  667. lusid/models/mbs_coupon_event.py +110 -0
  668. lusid/models/mbs_interest_deferral_event.py +110 -0
  669. lusid/models/mbs_interest_shortfall_event.py +110 -0
  670. lusid/models/mbs_principal_event.py +110 -0
  671. lusid/models/mbs_principal_write_off_event.py +110 -0
  672. lusid/models/merger_event.py +180 -0
  673. lusid/models/metric_value.py +61 -150
  674. lusid/models/model_options.py +79 -139
  675. lusid/models/model_options_type.py +43 -0
  676. lusid/models/model_property.py +75 -213
  677. lusid/models/model_schema.py +124 -0
  678. lusid/models/model_selection.py +70 -167
  679. lusid/models/move_orders_to_different_blocks_request.py +62 -129
  680. lusid/models/moved_order_to_different_block_response.py +68 -176
  681. lusid/models/movement_type.py +58 -0
  682. lusid/models/multi_currency_amounts.py +79 -0
  683. lusid/models/new_instrument.py +101 -0
  684. lusid/models/next_value_in_sequence_response.py +69 -153
  685. lusid/models/numeric_comparison_type.py +39 -0
  686. lusid/models/opaque_dependency.py +74 -129
  687. lusid/models/opaque_market_data.py +87 -270
  688. lusid/models/opaque_model_options.py +76 -159
  689. lusid/models/open_event.py +77 -161
  690. lusid/models/operand_type.py +38 -0
  691. lusid/models/operation.py +70 -222
  692. lusid/models/operation_type.py +38 -0
  693. lusid/models/operator.py +43 -0
  694. lusid/models/option_entry.py +86 -0
  695. lusid/models/option_exercise_cash_event.py +159 -0
  696. lusid/models/option_exercise_election.py +81 -0
  697. lusid/models/option_exercise_physical_event.py +164 -0
  698. lusid/models/optionality_schedule.py +126 -0
  699. lusid/models/order.py +176 -701
  700. lusid/models/order_by_spec.py +63 -161
  701. lusid/models/order_flow_configuration.py +54 -124
  702. lusid/models/order_graph_block.py +94 -376
  703. lusid/models/order_graph_block_allocation_detail.py +58 -121
  704. lusid/models/order_graph_block_allocation_synopsis.py +64 -155
  705. lusid/models/order_graph_block_execution_detail.py +58 -121
  706. lusid/models/order_graph_block_execution_synopsis.py +64 -155
  707. lusid/models/order_graph_block_order_detail.py +101 -309
  708. lusid/models/order_graph_block_order_synopsis.py +70 -184
  709. lusid/models/order_graph_block_placement_detail.py +58 -121
  710. lusid/models/order_graph_block_placement_synopsis.py +70 -184
  711. lusid/models/order_graph_block_transaction_detail.py +54 -126
  712. lusid/models/order_graph_block_transaction_synopsis.py +64 -155
  713. lusid/models/order_graph_placement.py +97 -336
  714. lusid/models/order_graph_placement_allocation_detail.py +58 -121
  715. lusid/models/order_graph_placement_allocation_synopsis.py +64 -155
  716. lusid/models/order_graph_placement_child_placement_detail.py +58 -121
  717. lusid/models/order_graph_placement_execution_detail.py +58 -121
  718. lusid/models/order_graph_placement_execution_synopsis.py +64 -155
  719. lusid/models/order_graph_placement_order_detail.py +58 -121
  720. lusid/models/order_graph_placement_order_synopsis.py +62 -123
  721. lusid/models/order_graph_placement_placement_synopsis.py +64 -155
  722. lusid/models/order_instruction.py +165 -0
  723. lusid/models/order_instruction_request.py +135 -0
  724. lusid/models/order_instruction_set_request.py +90 -0
  725. lusid/models/order_request.py +144 -575
  726. lusid/models/order_set_request.py +67 -121
  727. lusid/models/order_update_request.py +129 -0
  728. lusid/models/otc_confirmation.py +58 -120
  729. lusid/models/output_transaction.py +230 -873
  730. lusid/models/output_transition.py +80 -276
  731. lusid/models/package.py +140 -0
  732. lusid/models/package_request.py +119 -0
  733. lusid/models/package_set_request.py +90 -0
  734. lusid/models/paged_resource_list_of_abor.py +121 -0
  735. lusid/models/paged_resource_list_of_abor_configuration.py +121 -0
  736. lusid/models/paged_resource_list_of_account.py +121 -0
  737. lusid/models/paged_resource_list_of_address_key_definition.py +98 -243
  738. lusid/models/paged_resource_list_of_allocation.py +98 -243
  739. lusid/models/paged_resource_list_of_amortisation_rule_set.py +121 -0
  740. lusid/models/paged_resource_list_of_block.py +98 -243
  741. lusid/models/paged_resource_list_of_calendar.py +98 -243
  742. lusid/models/paged_resource_list_of_chart_of_accounts.py +121 -0
  743. lusid/models/paged_resource_list_of_cleardown_module_response.py +121 -0
  744. lusid/models/paged_resource_list_of_cleardown_module_rule.py +121 -0
  745. lusid/models/paged_resource_list_of_closed_period.py +121 -0
  746. lusid/models/paged_resource_list_of_compliance_rule_response.py +98 -243
  747. lusid/models/paged_resource_list_of_compliance_run_info_v2.py +98 -243
  748. lusid/models/paged_resource_list_of_compliance_template.py +98 -243
  749. lusid/models/paged_resource_list_of_corporate_action_source.py +98 -243
  750. lusid/models/paged_resource_list_of_custodian_account.py +121 -0
  751. lusid/models/paged_resource_list_of_custom_entity_definition.py +98 -243
  752. lusid/models/paged_resource_list_of_custom_entity_response.py +98 -243
  753. lusid/models/paged_resource_list_of_custom_entity_type.py +98 -243
  754. lusid/models/paged_resource_list_of_cut_label_definition.py +98 -243
  755. lusid/models/paged_resource_list_of_data_type_summary.py +98 -243
  756. lusid/models/paged_resource_list_of_dialect_id.py +98 -243
  757. lusid/models/paged_resource_list_of_diary_entry.py +121 -0
  758. lusid/models/paged_resource_list_of_execution.py +98 -243
  759. lusid/models/paged_resource_list_of_fee.py +121 -0
  760. lusid/models/paged_resource_list_of_fee_type.py +121 -0
  761. lusid/models/paged_resource_list_of_fund.py +121 -0
  762. lusid/models/paged_resource_list_of_fund_configuration.py +121 -0
  763. lusid/models/paged_resource_list_of_general_ledger_profile_response.py +121 -0
  764. lusid/models/paged_resource_list_of_group_reconciliation_comparison_result.py +121 -0
  765. lusid/models/paged_resource_list_of_group_reconciliation_comparison_ruleset.py +121 -0
  766. lusid/models/paged_resource_list_of_group_reconciliation_definition.py +121 -0
  767. lusid/models/paged_resource_list_of_instrument.py +98 -243
  768. lusid/models/paged_resource_list_of_instrument_event_holder.py +98 -243
  769. lusid/models/paged_resource_list_of_instrument_event_instruction.py +121 -0
  770. lusid/models/paged_resource_list_of_legal_entity.py +98 -243
  771. lusid/models/paged_resource_list_of_order.py +98 -243
  772. lusid/models/paged_resource_list_of_order_graph_block.py +98 -243
  773. lusid/models/paged_resource_list_of_order_graph_placement.py +98 -243
  774. lusid/models/paged_resource_list_of_order_instruction.py +121 -0
  775. lusid/models/paged_resource_list_of_package.py +121 -0
  776. lusid/models/paged_resource_list_of_participation.py +98 -243
  777. lusid/models/paged_resource_list_of_person.py +98 -243
  778. lusid/models/paged_resource_list_of_placement.py +98 -243
  779. lusid/models/paged_resource_list_of_portfolio_group.py +98 -243
  780. lusid/models/paged_resource_list_of_portfolio_group_search_result.py +98 -243
  781. lusid/models/paged_resource_list_of_portfolio_search_result.py +98 -243
  782. lusid/models/paged_resource_list_of_posting_module_response.py +121 -0
  783. lusid/models/paged_resource_list_of_posting_module_rule.py +121 -0
  784. lusid/models/paged_resource_list_of_property_definition.py +98 -243
  785. lusid/models/paged_resource_list_of_property_definition_search_result.py +98 -243
  786. lusid/models/paged_resource_list_of_reconciliation.py +121 -0
  787. lusid/models/paged_resource_list_of_reference_list_response.py +98 -243
  788. lusid/models/paged_resource_list_of_relationship_definition.py +98 -243
  789. lusid/models/paged_resource_list_of_sequence_definition.py +98 -243
  790. lusid/models/paged_resource_list_of_staged_modification.py +121 -0
  791. lusid/models/paged_resource_list_of_staged_modifications_requested_change_interval.py +121 -0
  792. lusid/models/paged_resource_list_of_staging_rule_set.py +121 -0
  793. lusid/models/paged_resource_list_of_transaction_template.py +121 -0
  794. lusid/models/paged_resource_list_of_transaction_template_specification.py +121 -0
  795. lusid/models/paged_resource_list_of_translation_script_id.py +98 -243
  796. lusid/models/paged_resource_list_of_valuation_point_overview.py +121 -0
  797. lusid/models/paged_resource_list_of_virtual_row.py +98 -243
  798. lusid/models/paged_resource_list_of_workspace.py +121 -0
  799. lusid/models/paged_resource_list_of_workspace_item.py +121 -0
  800. lusid/models/participation.py +89 -240
  801. lusid/models/participation_request.py +66 -179
  802. lusid/models/participation_set_request.py +67 -121
  803. lusid/models/percent_check_step.py +118 -0
  804. lusid/models/percent_check_step_request.py +106 -0
  805. lusid/models/performance_return.py +78 -246
  806. lusid/models/performance_returns_metric.py +86 -304
  807. lusid/models/period_diary_entries_reopened_response.py +112 -0
  808. lusid/models/period_type.py +41 -0
  809. lusid/models/perpetual_entity_state.py +39 -0
  810. lusid/models/perpetual_property.py +60 -152
  811. lusid/models/person.py +155 -330
  812. lusid/models/place_blocks_request.py +62 -129
  813. lusid/models/placement.py +164 -693
  814. lusid/models/placement_request.py +139 -609
  815. lusid/models/placement_set_request.py +67 -121
  816. lusid/models/placement_update_request.py +129 -0
  817. lusid/models/pnl_journal_entry_line.py +103 -0
  818. lusid/models/portfolio.py +215 -742
  819. lusid/models/portfolio_cash_flow.py +142 -588
  820. lusid/models/portfolio_cash_ladder.py +119 -245
  821. lusid/models/portfolio_details.py +157 -515
  822. lusid/models/portfolio_entity.py +154 -0
  823. lusid/models/portfolio_entity_id.py +77 -205
  824. lusid/models/portfolio_group.py +141 -397
  825. lusid/models/portfolio_group_id_compliance_parameter.py +80 -159
  826. lusid/models/portfolio_group_id_list.py +84 -162
  827. lusid/models/portfolio_group_id_list_compliance_parameter.py +80 -159
  828. lusid/models/portfolio_group_properties.py +100 -210
  829. lusid/models/portfolio_group_search_result.py +126 -367
  830. lusid/models/portfolio_holding.py +185 -639
  831. lusid/models/portfolio_id.py +88 -0
  832. lusid/models/portfolio_id_compliance_parameter.py +80 -159
  833. lusid/models/portfolio_id_list.py +84 -162
  834. lusid/models/portfolio_id_list_compliance_parameter.py +80 -159
  835. lusid/models/portfolio_properties.py +106 -210
  836. lusid/models/portfolio_reconciliation_request.py +67 -186
  837. lusid/models/portfolio_result_data_key_rule.py +136 -387
  838. lusid/models/portfolio_return_breakdown.py +112 -487
  839. lusid/models/portfolio_search_result.py +131 -437
  840. lusid/models/portfolio_trade_ticket.py +87 -0
  841. lusid/models/portfolio_type.py +40 -0
  842. lusid/models/portfolio_without_href.py +228 -0
  843. lusid/models/portfolios_reconciliation_request.py +63 -181
  844. lusid/models/posting_module_details.py +103 -0
  845. lusid/models/posting_module_request.py +125 -0
  846. lusid/models/posting_module_response.py +147 -0
  847. lusid/models/posting_module_rule.py +102 -0
  848. lusid/models/posting_module_rules_updated_response.py +118 -0
  849. lusid/models/pre_trade_configuration.py +77 -0
  850. lusid/models/premium.py +59 -188
  851. lusid/models/previous_fund_valuation_point_data.py +81 -0
  852. lusid/models/previous_nav.py +81 -0
  853. lusid/models/previous_share_class_breakdown.py +89 -0
  854. lusid/models/pricing_context.py +114 -210
  855. lusid/models/pricing_model.py +56 -0
  856. lusid/models/pricing_options.py +89 -429
  857. lusid/models/processed_command.py +70 -219
  858. lusid/models/property_definition.py +246 -732
  859. lusid/models/property_definition_entity.py +154 -0
  860. lusid/models/property_definition_search_result.py +207 -643
  861. lusid/models/property_definition_type.py +38 -0
  862. lusid/models/property_domain.py +114 -0
  863. lusid/models/property_filter.py +90 -223
  864. lusid/models/property_interval.py +71 -216
  865. lusid/models/property_key_compliance_parameter.py +76 -161
  866. lusid/models/property_key_list_compliance_parameter.py +80 -159
  867. lusid/models/property_life_time.py +38 -0
  868. lusid/models/property_list.py +84 -165
  869. lusid/models/property_list_compliance_parameter.py +80 -159
  870. lusid/models/property_schema.py +92 -175
  871. lusid/models/property_type.py +39 -0
  872. lusid/models/property_value.py +69 -177
  873. lusid/models/property_value_equals.py +101 -0
  874. lusid/models/property_value_in.py +101 -0
  875. lusid/models/protection_payout_cash_flow_event.py +110 -0
  876. lusid/models/query_applicable_instrument_events_request.py +97 -0
  877. lusid/models/query_bucketed_cash_flows_request.py +170 -0
  878. lusid/models/query_cash_flows_request.py +104 -0
  879. lusid/models/query_instrument_events_request.py +121 -0
  880. lusid/models/query_trade_tickets_request.py +104 -0
  881. lusid/models/queryable_key.py +110 -486
  882. lusid/models/quote.py +90 -308
  883. lusid/models/quote_access_metadata_rule.py +100 -0
  884. lusid/models/quote_access_metadata_rule_id.py +137 -0
  885. lusid/models/quote_dependency.py +81 -235
  886. lusid/models/quote_id.py +60 -156
  887. lusid/models/quote_instrument_id_type.py +45 -0
  888. lusid/models/quote_series_id.py +83 -298
  889. lusid/models/quote_type.py +53 -0
  890. lusid/models/raw_vendor_event.py +85 -227
  891. lusid/models/re_open_period_diary_entry_request.py +92 -0
  892. lusid/models/realised_gain_loss.py +118 -457
  893. lusid/models/recipe_block.py +95 -0
  894. lusid/models/recipe_composer.py +108 -0
  895. lusid/models/recipe_value.py +95 -0
  896. lusid/models/recombine_step.py +86 -196
  897. lusid/models/recommended_sort_by.py +84 -0
  898. lusid/models/reconcile_date_time_rule.py +91 -228
  899. lusid/models/reconcile_numeric_rule.py +91 -228
  900. lusid/models/reconcile_string_rule.py +105 -227
  901. lusid/models/reconciled_transaction.py +72 -210
  902. lusid/models/reconciliation.py +173 -0
  903. lusid/models/reconciliation_break.py +108 -406
  904. lusid/models/reconciliation_configuration.py +92 -0
  905. lusid/models/reconciliation_id.py +88 -0
  906. lusid/models/reconciliation_left_right_address_key_pair.py +56 -155
  907. lusid/models/reconciliation_line.py +80 -211
  908. lusid/models/reconciliation_request.py +100 -241
  909. lusid/models/reconciliation_response.py +73 -150
  910. lusid/models/reconciliation_rule.py +77 -138
  911. lusid/models/reconciliation_rule_type.py +40 -0
  912. lusid/models/reconciliation_side_configuration.py +102 -0
  913. lusid/models/reconciliation_transactions.py +87 -0
  914. lusid/models/reference_data.py +72 -151
  915. lusid/models/reference_instrument.py +80 -234
  916. lusid/models/reference_list.py +81 -141
  917. lusid/models/reference_list_request.py +80 -246
  918. lusid/models/reference_list_response.py +101 -306
  919. lusid/models/reference_list_type.py +44 -0
  920. lusid/models/reference_portfolio_constituent.py +99 -302
  921. lusid/models/reference_portfolio_constituent_request.py +83 -209
  922. lusid/models/reference_portfolio_weight_type.py +39 -0
  923. lusid/models/related_entity.py +108 -344
  924. lusid/models/relation.py +73 -276
  925. lusid/models/relation_definition.py +151 -0
  926. lusid/models/relationship.py +79 -313
  927. lusid/models/relationship_definition.py +114 -443
  928. lusid/models/relative_date_offset.py +63 -188
  929. lusid/models/repo.py +139 -471
  930. lusid/models/requested_changes.py +84 -0
  931. lusid/models/reset_event.py +93 -257
  932. lusid/models/resource_id.py +56 -167
  933. lusid/models/resource_list_of_access_controlled_resource.py +98 -243
  934. lusid/models/resource_list_of_access_metadata_value_of.py +103 -243
  935. lusid/models/resource_list_of_address_key_definition.py +98 -243
  936. lusid/models/resource_list_of_aggregated_return.py +98 -243
  937. lusid/models/resource_list_of_aggregation_query.py +98 -243
  938. lusid/models/resource_list_of_allocation.py +98 -243
  939. lusid/models/resource_list_of_applicable_instrument_event.py +121 -0
  940. lusid/models/resource_list_of_block.py +98 -243
  941. lusid/models/resource_list_of_block_and_orders.py +98 -243
  942. lusid/models/resource_list_of_calendar_date.py +98 -243
  943. lusid/models/resource_list_of_change.py +98 -243
  944. lusid/models/resource_list_of_change_history.py +98 -243
  945. lusid/models/resource_list_of_change_interval.py +121 -0
  946. lusid/models/resource_list_of_change_interval_with_order_management_detail.py +121 -0
  947. lusid/models/resource_list_of_compliance_breached_order_info.py +121 -0
  948. lusid/models/resource_list_of_compliance_rule.py +121 -0
  949. lusid/models/resource_list_of_compliance_rule_result.py +121 -0
  950. lusid/models/resource_list_of_compliance_run_info.py +121 -0
  951. lusid/models/resource_list_of_constituents_adjustment_header.py +98 -243
  952. lusid/models/resource_list_of_corporate_action.py +98 -243
  953. lusid/models/resource_list_of_data_model_summary.py +121 -0
  954. lusid/models/resource_list_of_data_type.py +98 -243
  955. lusid/models/resource_list_of_execution.py +98 -243
  956. lusid/models/resource_list_of_fee_rule.py +121 -0
  957. lusid/models/resource_list_of_get_cds_flow_conventions_response.py +121 -0
  958. lusid/models/resource_list_of_get_counterparty_agreement_response.py +98 -243
  959. lusid/models/resource_list_of_get_credit_support_annex_response.py +98 -243
  960. lusid/models/resource_list_of_get_flow_conventions_response.py +121 -0
  961. lusid/models/resource_list_of_get_index_convention_response.py +121 -0
  962. lusid/models/resource_list_of_get_recipe_composer_response.py +121 -0
  963. lusid/models/resource_list_of_get_recipe_response.py +98 -243
  964. lusid/models/resource_list_of_holdings_adjustment_header.py +98 -243
  965. lusid/models/resource_list_of_i_unit_definition_dto.py +98 -243
  966. lusid/models/resource_list_of_instrument_cash_flow.py +121 -0
  967. lusid/models/resource_list_of_instrument_event_holder.py +121 -0
  968. lusid/models/resource_list_of_instrument_id_type_descriptor.py +98 -243
  969. lusid/models/resource_list_of_legal_entity.py +98 -243
  970. lusid/models/resource_list_of_list_complex_market_data_with_meta_data_response.py +121 -0
  971. lusid/models/resource_list_of_mapping.py +98 -243
  972. lusid/models/resource_list_of_moved_order_to_different_block_response.py +98 -243
  973. lusid/models/resource_list_of_order.py +98 -243
  974. lusid/models/resource_list_of_order_instruction.py +121 -0
  975. lusid/models/resource_list_of_output_transaction.py +121 -0
  976. lusid/models/resource_list_of_package.py +121 -0
  977. lusid/models/resource_list_of_participation.py +98 -243
  978. lusid/models/resource_list_of_performance_return.py +98 -243
  979. lusid/models/resource_list_of_person.py +98 -243
  980. lusid/models/resource_list_of_placement.py +98 -243
  981. lusid/models/resource_list_of_portfolio.py +98 -243
  982. lusid/models/resource_list_of_portfolio_cash_flow.py +98 -243
  983. lusid/models/resource_list_of_portfolio_cash_ladder.py +98 -243
  984. lusid/models/resource_list_of_portfolio_trade_ticket.py +121 -0
  985. lusid/models/resource_list_of_processed_command.py +98 -243
  986. lusid/models/resource_list_of_property.py +98 -243
  987. lusid/models/resource_list_of_property_definition.py +98 -243
  988. lusid/models/resource_list_of_property_interval.py +98 -243
  989. lusid/models/resource_list_of_queryable_key.py +98 -243
  990. lusid/models/resource_list_of_quote.py +98 -243
  991. lusid/models/resource_list_of_quote_access_metadata_rule.py +121 -0
  992. lusid/models/resource_list_of_reconciliation_break.py +98 -243
  993. lusid/models/resource_list_of_relation.py +98 -243
  994. lusid/models/resource_list_of_relationship.py +98 -243
  995. lusid/models/resource_list_of_scope_definition.py +98 -243
  996. lusid/models/resource_list_of_side_definition.py +98 -243
  997. lusid/models/resource_list_of_string.py +90 -243
  998. lusid/models/resource_list_of_tax_rule_set.py +121 -0
  999. lusid/models/resource_list_of_transaction.py +121 -0
  1000. lusid/models/resource_list_of_transaction_type.py +98 -243
  1001. lusid/models/resource_list_of_value_type.py +91 -243
  1002. lusid/models/response_meta_data.py +80 -211
  1003. lusid/models/result_data_key_rule.py +106 -384
  1004. lusid/models/result_data_schema.py +109 -177
  1005. lusid/models/result_key_rule.py +76 -137
  1006. lusid/models/result_key_rule_type.py +39 -0
  1007. lusid/models/result_value.py +83 -144
  1008. lusid/models/result_value0_d.py +90 -220
  1009. lusid/models/result_value_bool.py +76 -160
  1010. lusid/models/result_value_currency.py +81 -159
  1011. lusid/models/result_value_date_time_offset.py +84 -191
  1012. lusid/models/result_value_decimal.py +83 -190
  1013. lusid/models/result_value_dictionary.py +93 -159
  1014. lusid/models/result_value_int.py +83 -190
  1015. lusid/models/result_value_string.py +81 -159
  1016. lusid/models/result_value_type.py +48 -0
  1017. lusid/models/return_zero_pv_options.py +77 -0
  1018. lusid/models/reverse_stock_split_event.py +113 -284
  1019. lusid/models/rounding_configuration.py +58 -120
  1020. lusid/models/rounding_configuration_component.py +54 -126
  1021. lusid/models/rounding_convention.py +70 -213
  1022. lusid/models/rules_interval.py +91 -0
  1023. lusid/models/scaling_methodology.py +39 -0
  1024. lusid/models/schedule.py +81 -137
  1025. lusid/models/schedule_type.py +45 -0
  1026. lusid/models/scope_definition.py +54 -126
  1027. lusid/models/scrip_dividend_event.py +113 -284
  1028. lusid/models/script_map_reference.py +79 -214
  1029. lusid/models/security_election.py +71 -247
  1030. lusid/models/security_offer_election.py +87 -0
  1031. lusid/models/sequence_definition.py +97 -371
  1032. lusid/models/set_amortisation_rules_request.py +81 -0
  1033. lusid/models/set_legal_entity_identifiers_request.py +72 -121
  1034. lusid/models/set_legal_entity_properties_request.py +72 -121
  1035. lusid/models/set_person_identifiers_request.py +72 -121
  1036. lusid/models/set_person_properties_request.py +67 -123
  1037. lusid/models/set_share_class_instruments_request.py +87 -0
  1038. lusid/models/set_transaction_configuration_alias.py +92 -0
  1039. lusid/models/set_transaction_configuration_source_request.py +115 -0
  1040. lusid/models/settlement_cycle.py +87 -0
  1041. lusid/models/settlement_schedule.py +86 -0
  1042. lusid/models/share_class_amount.py +79 -0
  1043. lusid/models/share_class_breakdown.py +162 -0
  1044. lusid/models/share_class_data.py +87 -0
  1045. lusid/models/share_class_dealing_breakdown.py +105 -0
  1046. lusid/models/share_class_details.py +135 -0
  1047. lusid/models/share_class_pnl_breakdown.py +118 -0
  1048. lusid/models/side_configuration_data.py +79 -331
  1049. lusid/models/side_configuration_data_request.py +87 -0
  1050. lusid/models/side_definition.py +93 -385
  1051. lusid/models/side_definition_request.py +76 -317
  1052. lusid/models/sides_definition_request.py +60 -159
  1053. lusid/models/simple_cash_flow_loan.py +91 -258
  1054. lusid/models/simple_instrument.py +97 -296
  1055. lusid/models/simple_rounding_convention.py +84 -0
  1056. lusid/models/sort_order.py +38 -0
  1057. lusid/models/specific_holding_pricing_info.py +83 -0
  1058. lusid/models/spin_off_event.py +148 -0
  1059. lusid/models/staged_modification.py +197 -0
  1060. lusid/models/staged_modification_decision.py +105 -0
  1061. lusid/models/staged_modification_decision_request.py +79 -0
  1062. lusid/models/staged_modification_effective_range.py +79 -0
  1063. lusid/models/staged_modification_staging_rule.py +93 -0
  1064. lusid/models/staged_modifications_entity_hrefs.py +111 -0
  1065. lusid/models/staged_modifications_info.py +62 -184
  1066. lusid/models/staged_modifications_requested_change_interval.py +121 -0
  1067. lusid/models/staging_rule.py +98 -0
  1068. lusid/models/staging_rule_approval_criteria.py +96 -0
  1069. lusid/models/staging_rule_match_criteria.py +103 -0
  1070. lusid/models/staging_rule_set.py +126 -0
  1071. lusid/models/step_schedule.py +88 -231
  1072. lusid/models/stock_dividend_event.py +113 -284
  1073. lusid/models/stock_split_event.py +113 -284
  1074. lusid/models/strategy.py +89 -0
  1075. lusid/models/stream.py +73 -323
  1076. lusid/models/string_comparison_type.py +41 -0
  1077. lusid/models/string_compliance_parameter.py +76 -162
  1078. lusid/models/string_list.py +76 -165
  1079. lusid/models/string_list_compliance_parameter.py +80 -159
  1080. lusid/models/structured_result_data.py +99 -0
  1081. lusid/models/structured_result_data_id.py +115 -0
  1082. lusid/models/sub_holding_key_value_equals.py +101 -0
  1083. lusid/models/swap_cash_flow_event.py +105 -0
  1084. lusid/models/swap_principal_event.py +105 -0
  1085. lusid/models/target_tax_lot.py +110 -273
  1086. lusid/models/target_tax_lot_request.py +110 -273
  1087. lusid/models/tax_rule.py +105 -0
  1088. lusid/models/tax_rule_set.py +132 -0
  1089. lusid/models/template_field.py +87 -0
  1090. lusid/models/tender_event.py +180 -0
  1091. lusid/models/term_deposit.py +96 -318
  1092. lusid/models/term_deposit_interest_event.py +108 -0
  1093. lusid/models/term_deposit_principal_event.py +108 -0
  1094. lusid/models/timeline.py +143 -0
  1095. lusid/models/total_return_swap.py +106 -254
  1096. lusid/models/touch.py +65 -223
  1097. lusid/models/trade_ticket.py +84 -0
  1098. lusid/models/trade_ticket_type.py +38 -0
  1099. lusid/models/trading_conventions.py +81 -0
  1100. lusid/models/transaction.py +213 -778
  1101. lusid/models/transaction_configuration_data.py +91 -184
  1102. lusid/models/transaction_configuration_data_request.py +91 -184
  1103. lusid/models/transaction_configuration_movement_data.py +114 -316
  1104. lusid/models/transaction_configuration_movement_data_request.py +114 -316
  1105. lusid/models/transaction_configuration_type_alias.py +93 -334
  1106. lusid/models/transaction_currency_and_amount.py +89 -0
  1107. lusid/models/transaction_date_windows.py +93 -0
  1108. lusid/models/transaction_diagnostics.py +79 -0
  1109. lusid/models/transaction_field_map.py +110 -0
  1110. lusid/models/transaction_price.py +66 -157
  1111. lusid/models/transaction_price_and_type.py +89 -0
  1112. lusid/models/transaction_price_type.py +42 -0
  1113. lusid/models/transaction_property_map.py +89 -0
  1114. lusid/models/transaction_property_mapping.py +66 -181
  1115. lusid/models/transaction_property_mapping_request.py +66 -181
  1116. lusid/models/transaction_query_mode.py +38 -0
  1117. lusid/models/transaction_query_parameters.py +70 -229
  1118. lusid/models/transaction_reconciliation_request.py +87 -297
  1119. lusid/models/transaction_reconciliation_request_v2.py +123 -0
  1120. lusid/models/transaction_request.py +168 -620
  1121. lusid/models/transaction_roles.py +44 -0
  1122. lusid/models/transaction_set_configuration_data.py +90 -181
  1123. lusid/models/transaction_set_configuration_data_request.py +100 -0
  1124. lusid/models/transaction_status.py +39 -0
  1125. lusid/models/transaction_template.py +108 -0
  1126. lusid/models/transaction_template_request.py +87 -0
  1127. lusid/models/transaction_template_specification.py +107 -0
  1128. lusid/models/transaction_type.py +122 -245
  1129. lusid/models/transaction_type_alias.py +76 -277
  1130. lusid/models/transaction_type_calculation.py +68 -167
  1131. lusid/models/transaction_type_details.py +81 -0
  1132. lusid/models/transaction_type_movement.py +148 -361
  1133. lusid/models/transaction_type_property_mapping.py +102 -192
  1134. lusid/models/transaction_type_request.py +107 -215
  1135. lusid/models/transactions_reconciliations_response.py +73 -150
  1136. lusid/models/transition_event.py +104 -313
  1137. lusid/models/translate_entities_inlined_request.py +75 -190
  1138. lusid/models/translate_entities_request.py +77 -180
  1139. lusid/models/translate_entities_response.py +105 -179
  1140. lusid/models/translate_instrument_definitions_request.py +99 -0
  1141. lusid/models/translate_instrument_definitions_response.py +137 -0
  1142. lusid/models/translate_trade_ticket_request.py +99 -0
  1143. lusid/models/translate_trade_tickets_response.py +137 -0
  1144. lusid/models/translation_context.py +60 -149
  1145. lusid/models/translation_input.py +54 -129
  1146. lusid/models/translation_result.py +69 -158
  1147. lusid/models/translation_script.py +66 -188
  1148. lusid/models/translation_script_id.py +79 -214
  1149. lusid/models/trial_balance.py +146 -0
  1150. lusid/models/trial_balance_query_parameters.py +119 -0
  1151. lusid/models/trigger_event.py +85 -296
  1152. lusid/models/typed_resource_id.py +79 -214
  1153. lusid/models/unit_schema.py +39 -0
  1154. lusid/models/unitisation_data.py +81 -0
  1155. lusid/models/units_ratio.py +56 -155
  1156. lusid/models/unmatched_holding_method.py +38 -0
  1157. lusid/models/update_amortisation_rule_set_details_request.py +101 -0
  1158. lusid/models/update_calendar_request.py +77 -190
  1159. lusid/models/update_compliance_template_request.py +103 -0
  1160. lusid/models/update_custom_entity_definition_request.py +80 -199
  1161. lusid/models/update_custom_entity_type_request.py +80 -199
  1162. lusid/models/update_cut_label_definition_request.py +86 -221
  1163. lusid/models/update_data_type_request.py +108 -229
  1164. lusid/models/update_derived_property_definition_request.py +71 -224
  1165. lusid/models/update_fee_type_request.py +104 -0
  1166. lusid/models/update_group_reconciliation_comparison_ruleset_request.py +99 -0
  1167. lusid/models/update_group_reconciliation_definition_request.py +115 -0
  1168. lusid/models/update_instrument_identifier_request.py +67 -185
  1169. lusid/models/update_orders_response.py +161 -0
  1170. lusid/models/update_placements_response.py +161 -0
  1171. lusid/models/update_portfolio_group_request.py +61 -156
  1172. lusid/models/update_portfolio_request.py +61 -156
  1173. lusid/models/update_property_definition_request.py +61 -159
  1174. lusid/models/update_reconciliation_request.py +139 -0
  1175. lusid/models/update_reference_data_request.py +95 -0
  1176. lusid/models/update_relationship_definition_request.py +79 -214
  1177. lusid/models/update_staging_rule_set_request.py +94 -0
  1178. lusid/models/update_tax_rule_set_request.py +103 -0
  1179. lusid/models/update_timeline_request.py +104 -0
  1180. lusid/models/update_unit_request.py +103 -202
  1181. lusid/models/upsert_cds_flow_conventions_request.py +81 -0
  1182. lusid/models/upsert_complex_market_data_request.py +64 -151
  1183. lusid/models/upsert_compliance_rule_request.py +116 -375
  1184. lusid/models/upsert_compliance_run_summary_request.py +75 -245
  1185. lusid/models/upsert_compliance_run_summary_result.py +75 -245
  1186. lusid/models/upsert_corporate_action_request.py +97 -332
  1187. lusid/models/upsert_corporate_actions_response.py +114 -211
  1188. lusid/models/upsert_counterparty_agreement_request.py +58 -121
  1189. lusid/models/upsert_credit_support_annex_request.py +58 -120
  1190. lusid/models/upsert_custom_data_model_request.py +176 -0
  1191. lusid/models/upsert_custom_entities_response.py +133 -211
  1192. lusid/models/upsert_custom_entity_access_metadata_request.py +67 -121
  1193. lusid/models/upsert_dialect_request.py +64 -151
  1194. lusid/models/upsert_flow_conventions_request.py +81 -0
  1195. lusid/models/upsert_index_convention_request.py +81 -0
  1196. lusid/models/upsert_instrument_event_request.py +110 -324
  1197. lusid/models/upsert_instrument_events_response.py +114 -211
  1198. lusid/models/upsert_instrument_properties_response.py +70 -154
  1199. lusid/models/upsert_instrument_property_request.py +71 -191
  1200. lusid/models/upsert_instruments_response.py +157 -241
  1201. lusid/models/upsert_legal_entities_response.py +114 -211
  1202. lusid/models/upsert_legal_entity_access_metadata_request.py +67 -121
  1203. lusid/models/upsert_legal_entity_request.py +118 -262
  1204. lusid/models/upsert_person_access_metadata_request.py +67 -121
  1205. lusid/models/upsert_person_request.py +95 -227
  1206. lusid/models/upsert_persons_response.py +122 -0
  1207. lusid/models/upsert_portfolio_access_metadata_request.py +62 -123
  1208. lusid/models/upsert_portfolio_group_access_metadata_request.py +62 -123
  1209. lusid/models/upsert_portfolio_transactions_response.py +104 -211
  1210. lusid/models/upsert_quote_access_metadata_rule_request.py +100 -0
  1211. lusid/models/upsert_quote_request.py +78 -210
  1212. lusid/models/upsert_quotes_response.py +114 -211
  1213. lusid/models/upsert_recipe_composer_request.py +81 -0
  1214. lusid/models/upsert_recipe_request.py +58 -120
  1215. lusid/models/upsert_reference_portfolio_constituent_properties_request.py +92 -0
  1216. lusid/models/upsert_reference_portfolio_constituent_properties_response.py +123 -0
  1217. lusid/models/upsert_reference_portfolio_constituents_request.py +97 -260
  1218. lusid/models/upsert_reference_portfolio_constituents_response.py +78 -176
  1219. lusid/models/upsert_result_values_data_request.py +101 -0
  1220. lusid/models/upsert_returns_response.py +103 -242
  1221. lusid/models/upsert_single_structured_data_response.py +75 -181
  1222. lusid/models/upsert_structured_data_response.py +102 -212
  1223. lusid/models/upsert_structured_result_data_request.py +87 -0
  1224. lusid/models/upsert_transaction_properties_response.py +100 -208
  1225. lusid/models/upsert_translation_script_request.py +60 -159
  1226. lusid/models/upsert_valuation_point_request.py +130 -0
  1227. lusid/models/user.py +59 -121
  1228. lusid/models/valuation_point_data_query_parameters.py +81 -0
  1229. lusid/models/valuation_point_data_request.py +84 -0
  1230. lusid/models/valuation_point_data_response.py +164 -0
  1231. lusid/models/valuation_point_overview.py +133 -0
  1232. lusid/models/valuation_point_resource_list_of_accounted_transaction.py +133 -0
  1233. lusid/models/valuation_point_resource_list_of_journal_entry_line.py +133 -0
  1234. lusid/models/valuation_point_resource_list_of_pnl_journal_entry_line.py +133 -0
  1235. lusid/models/valuation_point_resource_list_of_trial_balance.py +133 -0
  1236. lusid/models/valuation_request.py +159 -523
  1237. lusid/models/valuation_schedule.py +96 -324
  1238. lusid/models/valuations_reconciliation_request.py +85 -211
  1239. lusid/models/value_type.py +34 -116
  1240. lusid/models/vendor_dependency.py +103 -0
  1241. lusid/models/vendor_library.py +43 -0
  1242. lusid/models/vendor_model_rule.py +100 -330
  1243. lusid/models/version.py +120 -426
  1244. lusid/models/version_summary_dto.py +88 -205
  1245. lusid/models/versioned_resource_list_of_a2_b_data_record.py +104 -273
  1246. lusid/models/versioned_resource_list_of_a2_b_movement_record.py +104 -273
  1247. lusid/models/versioned_resource_list_of_holding_contributor.py +104 -273
  1248. lusid/models/versioned_resource_list_of_journal_entry_line.py +127 -0
  1249. lusid/models/versioned_resource_list_of_output_transaction.py +104 -273
  1250. lusid/models/versioned_resource_list_of_portfolio_holding.py +104 -273
  1251. lusid/models/versioned_resource_list_of_transaction.py +104 -273
  1252. lusid/models/versioned_resource_list_of_trial_balance.py +127 -0
  1253. lusid/models/versioned_resource_list_with_warnings_of_portfolio_holding.py +142 -0
  1254. lusid/models/virtual_document.py +96 -0
  1255. lusid/models/virtual_document_row.py +88 -0
  1256. lusid/models/virtual_row.py +79 -151
  1257. lusid/models/warning.py +79 -0
  1258. lusid/models/weekend_mask.py +64 -160
  1259. lusid/models/weighted_instrument.py +85 -215
  1260. lusid/models/weighted_instrument_in_line_lookup_identifiers.py +74 -410
  1261. lusid/models/weighted_instruments.py +62 -123
  1262. lusid/models/workspace.py +100 -0
  1263. lusid/models/workspace_creation_request.py +86 -0
  1264. lusid/models/workspace_item.py +120 -0
  1265. lusid/models/workspace_item_creation_request.py +113 -0
  1266. lusid/models/workspace_item_update_request.py +95 -0
  1267. lusid/models/workspace_update_request.py +77 -0
  1268. lusid/models/yield_curve_data.py +110 -291
  1269. lusid/py.typed +0 -0
  1270. lusid/rest.py +230 -243
  1271. lusid_sdk-2.1.683.dist-info/METADATA +1829 -0
  1272. lusid_sdk-2.1.683.dist-info/RECORD +1273 -0
  1273. {lusid_sdk-1.1.131.dist-info → lusid_sdk-2.1.683.dist-info}/WHEEL +1 -2
  1274. lusid/__version__.py +0 -1
  1275. lusid/models/accumulation_event_all_of.py +0 -310
  1276. lusid/models/action_result_of_portfolio.py +0 -172
  1277. lusid/models/address_key_compliance_parameter_all_of.py +0 -184
  1278. lusid/models/address_key_list_all_of.py +0 -188
  1279. lusid/models/address_key_list_compliance_parameter_all_of.py +0 -182
  1280. lusid/models/amortisation_event_all_of.py +0 -283
  1281. lusid/models/basket_all_of.py +0 -247
  1282. lusid/models/bond_all_of.py +0 -587
  1283. lusid/models/bond_coupon_event_all_of.py +0 -280
  1284. lusid/models/bond_default_event_all_of.py +0 -184
  1285. lusid/models/bond_principal_event_all_of.py +0 -280
  1286. lusid/models/bool_compliance_parameter_all_of.py +0 -182
  1287. lusid/models/branch_step_all_of.py +0 -219
  1288. lusid/models/calendar_dependency_all_of.py +0 -184
  1289. lusid/models/cap_floor_all_of.py +0 -313
  1290. lusid/models/cash_dependency_all_of.py +0 -216
  1291. lusid/models/cash_dividend_event_all_of.py +0 -308
  1292. lusid/models/cash_flow_event_all_of.py +0 -217
  1293. lusid/models/cash_flow_value_all_of.py +0 -306
  1294. lusid/models/cash_flow_value_set_all_of.py +0 -182
  1295. lusid/models/cash_perpetual_all_of.py +0 -248
  1296. lusid/models/cds_index_all_of.py +0 -399
  1297. lusid/models/check_step_all_of.py +0 -251
  1298. lusid/models/close_event_all_of.py +0 -214
  1299. lusid/models/complex_bond_all_of.py +0 -344
  1300. lusid/models/compliance_run_summary.py +0 -267
  1301. lusid/models/configuration_recipe_snippet.py +0 -372
  1302. lusid/models/constant_volatility_surface_all_of.py +0 -285
  1303. lusid/models/contract_for_difference_all_of.py +0 -447
  1304. lusid/models/credit_default_swap_all_of.py +0 -401
  1305. lusid/models/credit_spread_curve_data_all_of.py +0 -437
  1306. lusid/models/date_time_compliance_parameter_all_of.py +0 -182
  1307. lusid/models/decimal_compliance_parameter_all_of.py +0 -182
  1308. lusid/models/decimal_list_all_of.py +0 -188
  1309. lusid/models/discount_factor_curve_data_all_of.py +0 -313
  1310. lusid/models/discounting_dependency_all_of.py +0 -216
  1311. lusid/models/dividend_option_event_all_of.py +0 -371
  1312. lusid/models/dividend_reinvestment_event_all_of.py +0 -373
  1313. lusid/models/empty_model_options_all_of.py +0 -152
  1314. lusid/models/equity_all_of.py +0 -243
  1315. lusid/models/equity_curve_by_prices_data_all_of.py +0 -313
  1316. lusid/models/equity_curve_dependency_all_of.py +0 -298
  1317. lusid/models/equity_model_options_all_of.py +0 -187
  1318. lusid/models/equity_option_all_of.py +0 -571
  1319. lusid/models/equity_swap_all_of.py +0 -504
  1320. lusid/models/equity_vol_dependency_all_of.py +0 -292
  1321. lusid/models/equity_vol_surface_data_all_of.py +0 -284
  1322. lusid/models/exchange_traded_option_all_of.py +0 -278
  1323. lusid/models/exercise_event_all_of.py +0 -245
  1324. lusid/models/exotic_instrument_all_of.py +0 -217
  1325. lusid/models/expiry_event_all_of.py +0 -184
  1326. lusid/models/filter_predicate_compliance_parameter_all_of.py +0 -185
  1327. lusid/models/fixed_leg_all_of.py +0 -304
  1328. lusid/models/flexible_loan_all_of.py +0 -280
  1329. lusid/models/floating_leg_all_of.py +0 -366
  1330. lusid/models/forward_rate_agreement_all_of.py +0 -373
  1331. lusid/models/fund_share_class_all_of.py +0 -324
  1332. lusid/models/funding_leg_all_of.py +0 -276
  1333. lusid/models/future_all_of.py +0 -405
  1334. lusid/models/fx_dependency_all_of.py +0 -248
  1335. lusid/models/fx_forward_all_of.py +0 -498
  1336. lusid/models/fx_forward_curve_by_quote_reference_all_of.py +0 -405
  1337. lusid/models/fx_forward_curve_data_all_of.py +0 -377
  1338. lusid/models/fx_forward_model_options_all_of.py +0 -260
  1339. lusid/models/fx_forward_pips_curve_data_all_of.py +0 -377
  1340. lusid/models/fx_forward_settlement_event_all_of.py +0 -494
  1341. lusid/models/fx_forward_tenor_curve_data_all_of.py +0 -437
  1342. lusid/models/fx_forward_tenor_pips_curve_data_all_of.py +0 -437
  1343. lusid/models/fx_forwards_dependency_all_of.py +0 -286
  1344. lusid/models/fx_linked_notional_schedule_all_of.py +0 -273
  1345. lusid/models/fx_option_all_of.py +0 -646
  1346. lusid/models/fx_swap_all_of.py +0 -242
  1347. lusid/models/fx_vol_dependency_all_of.py +0 -286
  1348. lusid/models/index_model_options_all_of.py +0 -190
  1349. lusid/models/index_projection_dependency_all_of.py +0 -292
  1350. lusid/models/inflation_fixing_dependency_all_of.py +0 -254
  1351. lusid/models/inflation_leg_all_of.py +0 -472
  1352. lusid/models/inflation_linked_bond_all_of.py +0 -618
  1353. lusid/models/inflation_swap_all_of.py +0 -276
  1354. lusid/models/informational_error_event_all_of.py +0 -254
  1355. lusid/models/informational_event_all_of.py +0 -279
  1356. lusid/models/instrument_leg_all_of.py +0 -152
  1357. lusid/models/instrument_list_all_of.py +0 -188
  1358. lusid/models/interest_rate_swap_all_of.py +0 -339
  1359. lusid/models/interest_rate_swaption_all_of.py +0 -313
  1360. lusid/models/ir_vol_cube_data_all_of.py +0 -284
  1361. lusid/models/ir_vol_dependency_all_of.py +0 -254
  1362. lusid/models/life_cycle_event_value_all_of.py +0 -241
  1363. lusid/models/look_up_pricing_model_options.py +0 -216
  1364. lusid/models/look_up_pricing_model_options_all_of.py +0 -216
  1365. lusid/models/maturity_event_all_of.py +0 -184
  1366. lusid/models/opaque_dependency_all_of.py +0 -152
  1367. lusid/models/opaque_market_data_all_of.py +0 -293
  1368. lusid/models/opaque_model_options_all_of.py +0 -182
  1369. lusid/models/open_event_all_of.py +0 -183
  1370. lusid/models/portfolio_group_id_list_all_of.py +0 -185
  1371. lusid/models/portfolio_result_data_key_rule_all_of.py +0 -409
  1372. lusid/models/property_key_compliance_parameter_all_of.py +0 -184
  1373. lusid/models/property_list_all_of.py +0 -188
  1374. lusid/models/quote_dependency_all_of.py +0 -257
  1375. lusid/models/raw_vendor_event_all_of.py +0 -249
  1376. lusid/models/reconcile_date_time_rule_all_of.py +0 -251
  1377. lusid/models/reconcile_numeric_rule_all_of.py +0 -251
  1378. lusid/models/reconcile_string_rule_all_of.py +0 -250
  1379. lusid/models/reference_instrument_all_of.py +0 -257
  1380. lusid/models/repo_all_of.py +0 -493
  1381. lusid/models/reset_event_all_of.py +0 -279
  1382. lusid/models/result_data_key_rule_all_of.py +0 -406
  1383. lusid/models/result_value0_d_all_of.py +0 -243
  1384. lusid/models/result_value_bool_all_of.py +0 -183
  1385. lusid/models/result_value_currency_all_of.py +0 -182
  1386. lusid/models/result_value_date_time_offset_all_of.py +0 -213
  1387. lusid/models/result_value_decimal_all_of.py +0 -213
  1388. lusid/models/result_value_dictionary_all_of.py +0 -182
  1389. lusid/models/result_value_int_all_of.py +0 -213
  1390. lusid/models/result_value_string_all_of.py +0 -182
  1391. lusid/models/reverse_stock_split_event_all_of.py +0 -306
  1392. lusid/models/schema.py +0 -228
  1393. lusid/models/scrip_dividend_event_all_of.py +0 -306
  1394. lusid/models/simple_cash_flow_loan_all_of.py +0 -280
  1395. lusid/models/simple_instrument_all_of.py +0 -318
  1396. lusid/models/step_schedule_all_of.py +0 -254
  1397. lusid/models/stock_dividend_event_all_of.py +0 -306
  1398. lusid/models/stock_split_event_all_of.py +0 -306
  1399. lusid/models/string_compliance_parameter_all_of.py +0 -185
  1400. lusid/models/term_deposit_all_of.py +0 -340
  1401. lusid/models/total_return_swap_all_of.py +0 -276
  1402. lusid/models/transition_event_all_of.py +0 -335
  1403. lusid/models/trigger_event_all_of.py +0 -318
  1404. lusid/models/yield_curve_data_all_of.py +0 -313
  1405. lusid/tcp/__init__.py +0 -1
  1406. lusid/tcp/tcp_keep_alive_probes.py +0 -110
  1407. lusid/utilities/__init__.py +0 -8
  1408. lusid/utilities/api_client_builder.py +0 -145
  1409. lusid/utilities/api_client_factory.py +0 -132
  1410. lusid/utilities/api_configuration.py +0 -126
  1411. lusid/utilities/api_configuration_loader.py +0 -87
  1412. lusid/utilities/config_keys.json +0 -50
  1413. lusid/utilities/config_keys.py +0 -13
  1414. lusid/utilities/lusid_retry.py +0 -47
  1415. lusid_sdk-1.1.131.dist-info/METADATA +0 -21
  1416. lusid_sdk-1.1.131.dist-info/RECORD +0 -866
  1417. lusid_sdk-1.1.131.dist-info/top_level.txt +0 -1
@@ -5,50 +5,410 @@
5
5
 
6
6
  FINBOURNE Technology # noqa: E501
7
7
 
8
- The version of the OpenAPI document: 1.1.131
9
8
  Contact: info@finbourne.com
10
- Generated by: https://openapi-generator.tech
11
- """
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
12
10
 
11
+ Do not edit the class manually.
12
+ """
13
13
 
14
- from __future__ import absolute_import
15
14
 
16
15
  import re # noqa: F401
16
+ import io
17
+ import warnings
18
+
19
+ from pydantic.v1 import validate_arguments, ValidationError
20
+ from typing import overload, Optional, Union, Awaitable
17
21
 
18
- # python 2 and python 3 compatibility library
19
- import six
22
+ from typing_extensions import Annotated
23
+ from datetime import datetime
24
+
25
+ from pydantic.v1 import Field, StrictStr, conint, constr, validator
26
+
27
+ from typing import Dict, Optional
28
+
29
+ from lusid.models.annul_structured_data_response import AnnulStructuredDataResponse
30
+ from lusid.models.create_data_map_request import CreateDataMapRequest
31
+ from lusid.models.data_map_key import DataMapKey
32
+ from lusid.models.get_data_map_response import GetDataMapResponse
33
+ from lusid.models.get_structured_result_data_response import GetStructuredResultDataResponse
34
+ from lusid.models.get_virtual_document_response import GetVirtualDocumentResponse
35
+ from lusid.models.paged_resource_list_of_virtual_row import PagedResourceListOfVirtualRow
36
+ from lusid.models.resource_list_of_address_key_definition import ResourceListOfAddressKeyDefinition
37
+ from lusid.models.structured_result_data_id import StructuredResultDataId
38
+ from lusid.models.upsert_result_values_data_request import UpsertResultValuesDataRequest
39
+ from lusid.models.upsert_structured_data_response import UpsertStructuredDataResponse
40
+ from lusid.models.upsert_structured_result_data_request import UpsertStructuredResultDataRequest
20
41
 
21
42
  from lusid.api_client import ApiClient
43
+ from lusid.api_response import ApiResponse
22
44
  from lusid.exceptions import ( # noqa: F401
23
45
  ApiTypeError,
24
46
  ApiValueError
25
47
  )
26
- from lusid.models.lusid_problem_details import LusidProblemDetails
27
- from lusid.models.lusid_validation_problem_details import LusidValidationProblemDetails
28
- from lusid.models.paged_resource_list_of_virtual_row import PagedResourceListOfVirtualRow
29
- from lusid.models.resource_list_of_address_key_definition import ResourceListOfAddressKeyDefinition
48
+ from lusid.extensions.configuration_options import ConfigurationOptions
30
49
 
31
50
 
32
- class StructuredResultDataApi(object):
51
+ class StructuredResultDataApi:
33
52
  """NOTE: This class is auto generated by OpenAPI Generator
34
53
  Ref: https://openapi-generator.tech
35
54
 
36
55
  Do not edit the class manually.
37
56
  """
38
57
 
39
- def __init__(self, api_client=None):
58
+ def __init__(self, api_client=None) -> None:
40
59
  if api_client is None:
41
- api_client = ApiClient()
60
+ api_client = ApiClient.get_default()
42
61
  self.api_client = api_client
43
62
 
44
- def get_address_key_definitions_for_document(self, scope, code, source, result_type, **kwargs): # noqa: E501
63
+ @overload
64
+ async def create_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data maps.")], request_body : Annotated[Dict[str, CreateDataMapRequest], Field(..., description="Individual data map creation requests.")], **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
65
+ ...
66
+
67
+ @overload
68
+ def create_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data maps.")], request_body : Annotated[Dict[str, CreateDataMapRequest], Field(..., description="Individual data map creation requests.")], async_req: Optional[bool]=True, **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
69
+ ...
70
+
71
+ @validate_arguments
72
+ def create_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data maps.")], request_body : Annotated[Dict[str, CreateDataMapRequest], Field(..., description="Individual data map creation requests.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertStructuredDataResponse, Awaitable[UpsertStructuredDataResponse]]: # noqa: E501
73
+ """CreateDataMap: Create data map # noqa: E501
74
+
75
+ Create or update one or more structured result store address definition data maps in a particular scope. Note these are immutable and cannot be changed once created. In the request, each data map must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data map object in the response. The response returns both the collection of successfully created or updated data maps, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
76
+ This method makes a synchronous HTTP request by default. To make an
77
+ asynchronous HTTP request, please pass async_req=True
78
+
79
+ >>> thread = api.create_data_map(scope, request_body, async_req=True)
80
+ >>> result = thread.get()
81
+
82
+ :param scope: The scope in which to create or update data maps. (required)
83
+ :type scope: str
84
+ :param request_body: Individual data map creation requests. (required)
85
+ :type request_body: Dict[str, CreateDataMapRequest]
86
+ :param async_req: Whether to execute the request asynchronously.
87
+ :type async_req: bool, optional
88
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
89
+ :param opts: Configuration options for this request
90
+ :type opts: ConfigurationOptions, optional
91
+ :return: Returns the result object.
92
+ If the method is called asynchronously,
93
+ returns the request thread.
94
+ :rtype: UpsertStructuredDataResponse
95
+ """
96
+ kwargs['_return_http_data_only'] = True
97
+ if '_preload_content' in kwargs:
98
+ message = "Error! Please call the create_data_map_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
99
+ raise ValueError(message)
100
+ if async_req is not None:
101
+ kwargs['async_req'] = async_req
102
+ return self.create_data_map_with_http_info(scope, request_body, **kwargs) # noqa: E501
103
+
104
+ @validate_arguments
105
+ def create_data_map_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data maps.")], request_body : Annotated[Dict[str, CreateDataMapRequest], Field(..., description="Individual data map creation requests.")], **kwargs) -> ApiResponse: # noqa: E501
106
+ """CreateDataMap: Create data map # noqa: E501
107
+
108
+ Create or update one or more structured result store address definition data maps in a particular scope. Note these are immutable and cannot be changed once created. In the request, each data map must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data map object in the response. The response returns both the collection of successfully created or updated data maps, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
109
+ This method makes a synchronous HTTP request by default. To make an
110
+ asynchronous HTTP request, please pass async_req=True
111
+
112
+ >>> thread = api.create_data_map_with_http_info(scope, request_body, async_req=True)
113
+ >>> result = thread.get()
114
+
115
+ :param scope: The scope in which to create or update data maps. (required)
116
+ :type scope: str
117
+ :param request_body: Individual data map creation requests. (required)
118
+ :type request_body: Dict[str, CreateDataMapRequest]
119
+ :param async_req: Whether to execute the request asynchronously.
120
+ :type async_req: bool, optional
121
+ :param _preload_content: if False, the ApiResponse.data will
122
+ be set to none and raw_data will store the
123
+ HTTP response body without reading/decoding.
124
+ Default is True.
125
+ :type _preload_content: bool, optional
126
+ :param _return_http_data_only: response data instead of ApiResponse
127
+ object with status code, headers, etc
128
+ :type _return_http_data_only: bool, optional
129
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
130
+ :param opts: Configuration options for this request
131
+ :type opts: ConfigurationOptions, optional
132
+ :param _request_auth: set to override the auth_settings for an a single
133
+ request; this effectively ignores the authentication
134
+ in the spec for a single request.
135
+ :type _request_auth: dict, optional
136
+ :type _content_type: string, optional: force content-type for the request
137
+ :return: Returns the result object.
138
+ If the method is called asynchronously,
139
+ returns the request thread.
140
+ :rtype: tuple(UpsertStructuredDataResponse, status_code(int), headers(HTTPHeaderDict))
141
+ """
142
+
143
+ _params = locals()
144
+
145
+ _all_params = [
146
+ 'scope',
147
+ 'request_body'
148
+ ]
149
+ _all_params.extend(
150
+ [
151
+ 'async_req',
152
+ '_return_http_data_only',
153
+ '_preload_content',
154
+ '_request_timeout',
155
+ '_request_auth',
156
+ '_content_type',
157
+ '_headers',
158
+ 'opts'
159
+ ]
160
+ )
161
+
162
+ # validate the arguments
163
+ for _key, _val in _params['kwargs'].items():
164
+ if _key not in _all_params:
165
+ raise ApiTypeError(
166
+ "Got an unexpected keyword argument '%s'"
167
+ " to method create_data_map" % _key
168
+ )
169
+ _params[_key] = _val
170
+ del _params['kwargs']
171
+
172
+ _collection_formats = {}
173
+
174
+ # process the path parameters
175
+ _path_params = {}
176
+ if _params['scope']:
177
+ _path_params['scope'] = _params['scope']
178
+
179
+
180
+ # process the query parameters
181
+ _query_params = []
182
+ # process the header parameters
183
+ _header_params = dict(_params.get('_headers', {}))
184
+ # process the form parameters
185
+ _form_params = []
186
+ _files = {}
187
+ # process the body parameter
188
+ _body_params = None
189
+ if _params['request_body'] is not None:
190
+ _body_params = _params['request_body']
191
+
192
+ # set the HTTP header `Accept`
193
+ _header_params['Accept'] = self.api_client.select_header_accept(
194
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
195
+
196
+ # set the HTTP header `Content-Type`
197
+ _content_types_list = _params.get('_content_type',
198
+ self.api_client.select_header_content_type(
199
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
200
+ if _content_types_list:
201
+ _header_params['Content-Type'] = _content_types_list
202
+
203
+ # authentication setting
204
+ _auth_settings = ['oauth2'] # noqa: E501
205
+
206
+ _response_types_map = {
207
+ '200': "UpsertStructuredDataResponse",
208
+ '400': "LusidValidationProblemDetails",
209
+ }
210
+
211
+ return self.api_client.call_api(
212
+ '/api/unitresults/datamap/{scope}', 'POST',
213
+ _path_params,
214
+ _query_params,
215
+ _header_params,
216
+ body=_body_params,
217
+ post_params=_form_params,
218
+ files=_files,
219
+ response_types_map=_response_types_map,
220
+ auth_settings=_auth_settings,
221
+ async_req=_params.get('async_req'),
222
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
223
+ _preload_content=_params.get('_preload_content', True),
224
+ _request_timeout=_params.get('_request_timeout'),
225
+ opts=_params.get('opts'),
226
+ collection_formats=_collection_formats,
227
+ _request_auth=_params.get('_request_auth'))
228
+
229
+ @overload
230
+ async def delete_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to delete data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The data IDs to delete, each keyed by a unique, ephemeral correlation ID.")], **kwargs) -> AnnulStructuredDataResponse: # noqa: E501
231
+ ...
232
+
233
+ @overload
234
+ def delete_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to delete data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The data IDs to delete, each keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=True, **kwargs) -> AnnulStructuredDataResponse: # noqa: E501
235
+ ...
236
+
237
+ @validate_arguments
238
+ def delete_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to delete data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The data IDs to delete, each keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=None, **kwargs) -> Union[AnnulStructuredDataResponse, Awaitable[AnnulStructuredDataResponse]]: # noqa: E501
239
+ """[EXPERIMENTAL] DeleteStructuredResultData: Delete structured result data # noqa: E501
240
+
241
+ Delete one or more structured result data items from a particular scope. Each item is identified by a unique ID which includes information about its type as well as the exact effective datetime (to the microsecond) at which it entered the system (became valid). In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully deleted data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
242
+ This method makes a synchronous HTTP request by default. To make an
243
+ asynchronous HTTP request, please pass async_req=True
244
+
245
+ >>> thread = api.delete_structured_result_data(scope, request_body, async_req=True)
246
+ >>> result = thread.get()
247
+
248
+ :param scope: The scope from which to delete data items. (required)
249
+ :type scope: str
250
+ :param request_body: The data IDs to delete, each keyed by a unique, ephemeral correlation ID. (required)
251
+ :type request_body: Dict[str, StructuredResultDataId]
252
+ :param async_req: Whether to execute the request asynchronously.
253
+ :type async_req: bool, optional
254
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
255
+ :param opts: Configuration options for this request
256
+ :type opts: ConfigurationOptions, optional
257
+ :return: Returns the result object.
258
+ If the method is called asynchronously,
259
+ returns the request thread.
260
+ :rtype: AnnulStructuredDataResponse
261
+ """
262
+ kwargs['_return_http_data_only'] = True
263
+ if '_preload_content' in kwargs:
264
+ message = "Error! Please call the delete_structured_result_data_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
265
+ raise ValueError(message)
266
+ if async_req is not None:
267
+ kwargs['async_req'] = async_req
268
+ return self.delete_structured_result_data_with_http_info(scope, request_body, **kwargs) # noqa: E501
269
+
270
+ @validate_arguments
271
+ def delete_structured_result_data_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to delete data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The data IDs to delete, each keyed by a unique, ephemeral correlation ID.")], **kwargs) -> ApiResponse: # noqa: E501
272
+ """[EXPERIMENTAL] DeleteStructuredResultData: Delete structured result data # noqa: E501
273
+
274
+ Delete one or more structured result data items from a particular scope. Each item is identified by a unique ID which includes information about its type as well as the exact effective datetime (to the microsecond) at which it entered the system (became valid). In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully deleted data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
275
+ This method makes a synchronous HTTP request by default. To make an
276
+ asynchronous HTTP request, please pass async_req=True
277
+
278
+ >>> thread = api.delete_structured_result_data_with_http_info(scope, request_body, async_req=True)
279
+ >>> result = thread.get()
280
+
281
+ :param scope: The scope from which to delete data items. (required)
282
+ :type scope: str
283
+ :param request_body: The data IDs to delete, each keyed by a unique, ephemeral correlation ID. (required)
284
+ :type request_body: Dict[str, StructuredResultDataId]
285
+ :param async_req: Whether to execute the request asynchronously.
286
+ :type async_req: bool, optional
287
+ :param _preload_content: if False, the ApiResponse.data will
288
+ be set to none and raw_data will store the
289
+ HTTP response body without reading/decoding.
290
+ Default is True.
291
+ :type _preload_content: bool, optional
292
+ :param _return_http_data_only: response data instead of ApiResponse
293
+ object with status code, headers, etc
294
+ :type _return_http_data_only: bool, optional
295
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
296
+ :param opts: Configuration options for this request
297
+ :type opts: ConfigurationOptions, optional
298
+ :param _request_auth: set to override the auth_settings for an a single
299
+ request; this effectively ignores the authentication
300
+ in the spec for a single request.
301
+ :type _request_auth: dict, optional
302
+ :type _content_type: string, optional: force content-type for the request
303
+ :return: Returns the result object.
304
+ If the method is called asynchronously,
305
+ returns the request thread.
306
+ :rtype: tuple(AnnulStructuredDataResponse, status_code(int), headers(HTTPHeaderDict))
307
+ """
308
+
309
+ _params = locals()
310
+
311
+ _all_params = [
312
+ 'scope',
313
+ 'request_body'
314
+ ]
315
+ _all_params.extend(
316
+ [
317
+ 'async_req',
318
+ '_return_http_data_only',
319
+ '_preload_content',
320
+ '_request_timeout',
321
+ '_request_auth',
322
+ '_content_type',
323
+ '_headers',
324
+ 'opts'
325
+ ]
326
+ )
327
+
328
+ # validate the arguments
329
+ for _key, _val in _params['kwargs'].items():
330
+ if _key not in _all_params:
331
+ raise ApiTypeError(
332
+ "Got an unexpected keyword argument '%s'"
333
+ " to method delete_structured_result_data" % _key
334
+ )
335
+ _params[_key] = _val
336
+ del _params['kwargs']
337
+
338
+ _collection_formats = {}
339
+
340
+ # process the path parameters
341
+ _path_params = {}
342
+ if _params['scope']:
343
+ _path_params['scope'] = _params['scope']
344
+
345
+
346
+ # process the query parameters
347
+ _query_params = []
348
+ # process the header parameters
349
+ _header_params = dict(_params.get('_headers', {}))
350
+ # process the form parameters
351
+ _form_params = []
352
+ _files = {}
353
+ # process the body parameter
354
+ _body_params = None
355
+ if _params['request_body'] is not None:
356
+ _body_params = _params['request_body']
357
+
358
+ # set the HTTP header `Accept`
359
+ _header_params['Accept'] = self.api_client.select_header_accept(
360
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
361
+
362
+ # set the HTTP header `Content-Type`
363
+ _content_types_list = _params.get('_content_type',
364
+ self.api_client.select_header_content_type(
365
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
366
+ if _content_types_list:
367
+ _header_params['Content-Type'] = _content_types_list
368
+
369
+ # authentication setting
370
+ _auth_settings = ['oauth2'] # noqa: E501
371
+
372
+ _response_types_map = {
373
+ '200': "AnnulStructuredDataResponse",
374
+ '400': "LusidValidationProblemDetails",
375
+ }
376
+
377
+ return self.api_client.call_api(
378
+ '/api/unitresults/{scope}/$delete', 'POST',
379
+ _path_params,
380
+ _query_params,
381
+ _header_params,
382
+ body=_body_params,
383
+ post_params=_form_params,
384
+ files=_files,
385
+ response_types_map=_response_types_map,
386
+ auth_settings=_auth_settings,
387
+ async_req=_params.get('async_req'),
388
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
389
+ _preload_content=_params.get('_preload_content', True),
390
+ _request_timeout=_params.get('_request_timeout'),
391
+ opts=_params.get('opts'),
392
+ collection_formats=_collection_formats,
393
+ _request_auth=_params.get('_request_auth'))
394
+
395
+ @overload
396
+ async def get_address_key_definitions_for_document(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope of the document for which address key definitions are retrieved.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the document for which address key definitions are retrieved.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the document for which address key definitions are retrieved.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the document for which address key definitions are retrieved.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, **kwargs) -> ResourceListOfAddressKeyDefinition: # noqa: E501
397
+ ...
398
+
399
+ @overload
400
+ def get_address_key_definitions_for_document(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope of the document for which address key definitions are retrieved.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the document for which address key definitions are retrieved.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the document for which address key definitions are retrieved.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the document for which address key definitions are retrieved.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfAddressKeyDefinition: # noqa: E501
401
+ ...
402
+
403
+ @validate_arguments
404
+ def get_address_key_definitions_for_document(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope of the document for which address key definitions are retrieved.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the document for which address key definitions are retrieved.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the document for which address key definitions are retrieved.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the document for which address key definitions are retrieved.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfAddressKeyDefinition, Awaitable[ResourceListOfAddressKeyDefinition]]: # noqa: E501
45
405
  """[EARLY ACCESS] GetAddressKeyDefinitionsForDocument: Get AddressKeyDefinitions for a virtual document. # noqa: E501
46
406
 
47
407
  For a given virtual document retrieve all the address key definitions that are in use. # noqa: E501
48
408
  This method makes a synchronous HTTP request by default. To make an
49
409
  asynchronous HTTP request, please pass async_req=True
50
410
 
51
- >>> thread = api.get_address_key_definitions_for_document(scope, code, source, result_type, async_req=True)
411
+ >>> thread = api.get_address_key_definitions_for_document(scope, code, source, result_type, effective_at, as_at, async_req=True)
52
412
  >>> result = thread.get()
53
413
 
54
414
  :param scope: The scope of the document for which address key definitions are retrieved. (required)
@@ -65,30 +425,31 @@ class StructuredResultDataApi(object):
65
425
  :type as_at: datetime
66
426
  :param async_req: Whether to execute the request asynchronously.
67
427
  :type async_req: bool, optional
68
- :param _preload_content: if False, the urllib3.HTTPResponse object will
69
- be returned without reading/decoding response
70
- data. Default is True.
71
- :type _preload_content: bool, optional
72
- :param _request_timeout: timeout setting for this request. If one
73
- number provided, it will be total request
74
- timeout. It can also be a pair (tuple) of
75
- (connection, read) timeouts.
428
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
429
+ :param opts: Configuration options for this request
430
+ :type opts: ConfigurationOptions, optional
76
431
  :return: Returns the result object.
77
432
  If the method is called asynchronously,
78
433
  returns the request thread.
79
434
  :rtype: ResourceListOfAddressKeyDefinition
80
435
  """
81
436
  kwargs['_return_http_data_only'] = True
82
- return self.get_address_key_definitions_for_document_with_http_info(scope, code, source, result_type, **kwargs) # noqa: E501
437
+ if '_preload_content' in kwargs:
438
+ message = "Error! Please call the get_address_key_definitions_for_document_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
439
+ raise ValueError(message)
440
+ if async_req is not None:
441
+ kwargs['async_req'] = async_req
442
+ return self.get_address_key_definitions_for_document_with_http_info(scope, code, source, result_type, effective_at, as_at, **kwargs) # noqa: E501
83
443
 
84
- def get_address_key_definitions_for_document_with_http_info(self, scope, code, source, result_type, **kwargs): # noqa: E501
444
+ @validate_arguments
445
+ def get_address_key_definitions_for_document_with_http_info(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope of the document for which address key definitions are retrieved.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the document for which address key definitions are retrieved.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the document for which address key definitions are retrieved.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the document for which address key definitions are retrieved.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime to query the document for which the address key definitions are retrieved. Defaults to querying the latest version if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
85
446
  """[EARLY ACCESS] GetAddressKeyDefinitionsForDocument: Get AddressKeyDefinitions for a virtual document. # noqa: E501
86
447
 
87
448
  For a given virtual document retrieve all the address key definitions that are in use. # noqa: E501
88
449
  This method makes a synchronous HTTP request by default. To make an
89
450
  asynchronous HTTP request, please pass async_req=True
90
451
 
91
- >>> thread = api.get_address_key_definitions_for_document_with_http_info(scope, code, source, result_type, async_req=True)
452
+ >>> thread = api.get_address_key_definitions_for_document_with_http_info(scope, code, source, result_type, effective_at, as_at, async_req=True)
92
453
  >>> result = thread.get()
93
454
 
94
455
  :param scope: The scope of the document for which address key definitions are retrieved. (required)
@@ -105,30 +466,31 @@ class StructuredResultDataApi(object):
105
466
  :type as_at: datetime
106
467
  :param async_req: Whether to execute the request asynchronously.
107
468
  :type async_req: bool, optional
108
- :param _return_http_data_only: response data without head status code
109
- and headers
110
- :type _return_http_data_only: bool, optional
111
- :param _preload_content: if False, the urllib3.HTTPResponse object will
112
- be returned without reading/decoding response
113
- data. Default is True.
469
+ :param _preload_content: if False, the ApiResponse.data will
470
+ be set to none and raw_data will store the
471
+ HTTP response body without reading/decoding.
472
+ Default is True.
114
473
  :type _preload_content: bool, optional
115
- :param _request_timeout: timeout setting for this request. If one
116
- number provided, it will be total request
117
- timeout. It can also be a pair (tuple) of
118
- (connection, read) timeouts.
474
+ :param _return_http_data_only: response data instead of ApiResponse
475
+ object with status code, headers, etc
476
+ :type _return_http_data_only: bool, optional
477
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
478
+ :param opts: Configuration options for this request
479
+ :type opts: ConfigurationOptions, optional
119
480
  :param _request_auth: set to override the auth_settings for an a single
120
481
  request; this effectively ignores the authentication
121
482
  in the spec for a single request.
122
483
  :type _request_auth: dict, optional
123
- :return: Returns the result object, the HTTP status code, and the headers.
484
+ :type _content_type: string, optional: force content-type for the request
485
+ :return: Returns the result object.
124
486
  If the method is called asynchronously,
125
487
  returns the request thread.
126
- :rtype: (ResourceListOfAddressKeyDefinition, int, HTTPHeaderDict)
488
+ :rtype: tuple(ResourceListOfAddressKeyDefinition, status_code(int), headers(HTTPHeaderDict))
127
489
  """
128
490
 
129
- local_var_params = locals()
491
+ _params = locals()
130
492
 
131
- all_params = [
493
+ _all_params = [
132
494
  'scope',
133
495
  'code',
134
496
  'source',
@@ -136,134 +498,639 @@ class StructuredResultDataApi(object):
136
498
  'effective_at',
137
499
  'as_at'
138
500
  ]
139
- all_params.extend(
501
+ _all_params.extend(
140
502
  [
141
503
  'async_req',
142
504
  '_return_http_data_only',
143
505
  '_preload_content',
144
506
  '_request_timeout',
145
507
  '_request_auth',
146
- '_headers'
508
+ '_content_type',
509
+ '_headers',
510
+ 'opts'
147
511
  ]
148
512
  )
149
513
 
150
- for key, val in six.iteritems(local_var_params['kwargs']):
151
- if key not in all_params:
514
+ # validate the arguments
515
+ for _key, _val in _params['kwargs'].items():
516
+ if _key not in _all_params:
152
517
  raise ApiTypeError(
153
518
  "Got an unexpected keyword argument '%s'"
154
- " to method get_address_key_definitions_for_document" % key
519
+ " to method get_address_key_definitions_for_document" % _key
155
520
  )
156
- local_var_params[key] = val
157
- del local_var_params['kwargs']
158
- # verify the required parameter 'scope' is set
159
- if self.api_client.client_side_validation and ('scope' not in local_var_params or # noqa: E501
160
- local_var_params['scope'] is None): # noqa: E501
161
- raise ApiValueError("Missing the required parameter `scope` when calling `get_address_key_definitions_for_document`") # noqa: E501
162
- # verify the required parameter 'code' is set
163
- if self.api_client.client_side_validation and ('code' not in local_var_params or # noqa: E501
164
- local_var_params['code'] is None): # noqa: E501
165
- raise ApiValueError("Missing the required parameter `code` when calling `get_address_key_definitions_for_document`") # noqa: E501
166
- # verify the required parameter 'source' is set
167
- if self.api_client.client_side_validation and ('source' not in local_var_params or # noqa: E501
168
- local_var_params['source'] is None): # noqa: E501
169
- raise ApiValueError("Missing the required parameter `source` when calling `get_address_key_definitions_for_document`") # noqa: E501
170
- # verify the required parameter 'result_type' is set
171
- if self.api_client.client_side_validation and ('result_type' not in local_var_params or # noqa: E501
172
- local_var_params['result_type'] is None): # noqa: E501
173
- raise ApiValueError("Missing the required parameter `result_type` when calling `get_address_key_definitions_for_document`") # noqa: E501
174
-
175
- if self.api_client.client_side_validation and ('scope' in local_var_params and # noqa: E501
176
- len(local_var_params['scope']) > 256): # noqa: E501
177
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_address_key_definitions_for_document`, length must be less than or equal to `256`") # noqa: E501
178
- if self.api_client.client_side_validation and ('scope' in local_var_params and # noqa: E501
179
- len(local_var_params['scope']) < 1): # noqa: E501
180
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_address_key_definitions_for_document`, length must be greater than or equal to `1`") # noqa: E501
181
- if self.api_client.client_side_validation and 'scope' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['scope']): # noqa: E501
182
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_address_key_definitions_for_document`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
183
- if self.api_client.client_side_validation and ('code' in local_var_params and # noqa: E501
184
- len(local_var_params['code']) > 256): # noqa: E501
185
- raise ApiValueError("Invalid value for parameter `code` when calling `get_address_key_definitions_for_document`, length must be less than or equal to `256`") # noqa: E501
186
- if self.api_client.client_side_validation and ('code' in local_var_params and # noqa: E501
187
- len(local_var_params['code']) < 1): # noqa: E501
188
- raise ApiValueError("Invalid value for parameter `code` when calling `get_address_key_definitions_for_document`, length must be greater than or equal to `1`") # noqa: E501
189
- if self.api_client.client_side_validation and 'code' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['code']): # noqa: E501
190
- raise ApiValueError("Invalid value for parameter `code` when calling `get_address_key_definitions_for_document`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
191
- if self.api_client.client_side_validation and ('source' in local_var_params and # noqa: E501
192
- len(local_var_params['source']) > 256): # noqa: E501
193
- raise ApiValueError("Invalid value for parameter `source` when calling `get_address_key_definitions_for_document`, length must be less than or equal to `256`") # noqa: E501
194
- if self.api_client.client_side_validation and ('source' in local_var_params and # noqa: E501
195
- len(local_var_params['source']) < 1): # noqa: E501
196
- raise ApiValueError("Invalid value for parameter `source` when calling `get_address_key_definitions_for_document`, length must be greater than or equal to `1`") # noqa: E501
197
- if self.api_client.client_side_validation and 'source' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['source']): # noqa: E501
198
- raise ApiValueError("Invalid value for parameter `source` when calling `get_address_key_definitions_for_document`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
199
- collection_formats = {}
200
-
201
- path_params = {}
202
- if 'scope' in local_var_params:
203
- path_params['scope'] = local_var_params['scope'] # noqa: E501
204
- if 'code' in local_var_params:
205
- path_params['code'] = local_var_params['code'] # noqa: E501
206
- if 'source' in local_var_params:
207
- path_params['source'] = local_var_params['source'] # noqa: E501
208
- if 'result_type' in local_var_params:
209
- path_params['resultType'] = local_var_params['result_type'] # noqa: E501
210
-
211
- query_params = []
212
- if 'effective_at' in local_var_params and local_var_params['effective_at'] is not None: # noqa: E501
213
- query_params.append(('effectiveAt', local_var_params['effective_at'])) # noqa: E501
214
- if 'as_at' in local_var_params and local_var_params['as_at'] is not None: # noqa: E501
215
- query_params.append(('asAt', local_var_params['as_at'])) # noqa: E501
216
-
217
- header_params = dict(local_var_params.get('_headers', {}))
218
-
219
- form_params = []
220
- local_var_files = {}
221
-
222
- body_params = None
223
- # HTTP header `Accept`
224
- header_params['Accept'] = self.api_client.select_header_accept(
225
- ['text/plain', 'application/json', 'text/json']) # noqa: E501
521
+ _params[_key] = _val
522
+ del _params['kwargs']
523
+
524
+ _collection_formats = {}
525
+
526
+ # process the path parameters
527
+ _path_params = {}
528
+ if _params['scope']:
529
+ _path_params['scope'] = _params['scope']
530
+
531
+ if _params['code']:
532
+ _path_params['code'] = _params['code']
226
533
 
227
- header_params['Accept-Encoding'] = "gzip, deflate, br"
534
+ if _params['source']:
535
+ _path_params['source'] = _params['source']
228
536
 
537
+ if _params['result_type']:
538
+ _path_params['resultType'] = _params['result_type']
229
539
 
230
- # set the LUSID header
231
- header_params['X-LUSID-SDK-Language'] = 'Python'
232
- header_params['X-LUSID-SDK-Version'] = '1.1.131'
233
540
 
234
- # Authentication setting
235
- auth_settings = ['oauth2'] # noqa: E501
541
+ # process the query parameters
542
+ _query_params = []
543
+ if _params.get('effective_at') is not None: # noqa: E501
544
+ _query_params.append(('effectiveAt', _params['effective_at']))
236
545
 
237
- response_types_map = {
238
- 200: "ResourceListOfAddressKeyDefinition",
239
- 400: "LusidValidationProblemDetails",
546
+ if _params.get('as_at') is not None: # noqa: E501
547
+ if isinstance(_params['as_at'], datetime):
548
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
549
+ else:
550
+ _query_params.append(('asAt', _params['as_at']))
551
+
552
+ # process the header parameters
553
+ _header_params = dict(_params.get('_headers', {}))
554
+ # process the form parameters
555
+ _form_params = []
556
+ _files = {}
557
+ # process the body parameter
558
+ _body_params = None
559
+ # set the HTTP header `Accept`
560
+ _header_params['Accept'] = self.api_client.select_header_accept(
561
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
562
+
563
+ # authentication setting
564
+ _auth_settings = ['oauth2'] # noqa: E501
565
+
566
+ _response_types_map = {
567
+ '200': "ResourceListOfAddressKeyDefinition",
568
+ '400': "LusidValidationProblemDetails",
240
569
  }
241
570
 
242
571
  return self.api_client.call_api(
243
572
  '/api/unitresults/virtualdocument/{scope}/{code}/{source}/{resultType}/addresskeydefinitions', 'GET',
244
- path_params,
245
- query_params,
246
- header_params,
247
- body=body_params,
248
- post_params=form_params,
249
- files=local_var_files,
250
- response_types_map=response_types_map,
251
- auth_settings=auth_settings,
252
- async_req=local_var_params.get('async_req'),
253
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
254
- _preload_content=local_var_params.get('_preload_content', True),
255
- _request_timeout=local_var_params.get('_request_timeout'),
256
- collection_formats=collection_formats,
257
- _request_auth=local_var_params.get('_request_auth'))
258
-
259
- def get_virtual_document_rows(self, scope, code, source, result_type, effective_at, **kwargs): # noqa: E501
573
+ _path_params,
574
+ _query_params,
575
+ _header_params,
576
+ body=_body_params,
577
+ post_params=_form_params,
578
+ files=_files,
579
+ response_types_map=_response_types_map,
580
+ auth_settings=_auth_settings,
581
+ async_req=_params.get('async_req'),
582
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
583
+ _preload_content=_params.get('_preload_content', True),
584
+ _request_timeout=_params.get('_request_timeout'),
585
+ opts=_params.get('opts'),
586
+ collection_formats=_collection_formats,
587
+ _request_auth=_params.get('_request_auth'))
588
+
589
+ @overload
590
+ async def get_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data maps.")], request_body : Annotated[Dict[str, DataMapKey], Field(..., description="The data map keys to look up, each keyed by a unique, ephemeral correlation ID.")], **kwargs) -> GetDataMapResponse: # noqa: E501
591
+ ...
592
+
593
+ @overload
594
+ def get_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data maps.")], request_body : Annotated[Dict[str, DataMapKey], Field(..., description="The data map keys to look up, each keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=True, **kwargs) -> GetDataMapResponse: # noqa: E501
595
+ ...
596
+
597
+ @validate_arguments
598
+ def get_data_map(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data maps.")], request_body : Annotated[Dict[str, DataMapKey], Field(..., description="The data map keys to look up, each keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=None, **kwargs) -> Union[GetDataMapResponse, Awaitable[GetDataMapResponse]]: # noqa: E501
599
+ """[EXPERIMENTAL] GetDataMap: Get data map # noqa: E501
600
+
601
+ Retrieve one or more structured result store address definition data maps from a particular scope. Each data map can be identified by its invariant key, which can be thought of as a permanent URL. For each ID, LUSID returns the most recently matched item. In the request, each data map must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data map in the response. The response returns three collections. The first contains successfully retrieved data maps. The second contains those with a valid identifier but that could not be found. The third contains those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
602
+ This method makes a synchronous HTTP request by default. To make an
603
+ asynchronous HTTP request, please pass async_req=True
604
+
605
+ >>> thread = api.get_data_map(scope, request_body, async_req=True)
606
+ >>> result = thread.get()
607
+
608
+ :param scope: The scope from which to retrieve data maps. (required)
609
+ :type scope: str
610
+ :param request_body: The data map keys to look up, each keyed by a unique, ephemeral correlation ID. (required)
611
+ :type request_body: Dict[str, DataMapKey]
612
+ :param async_req: Whether to execute the request asynchronously.
613
+ :type async_req: bool, optional
614
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
615
+ :param opts: Configuration options for this request
616
+ :type opts: ConfigurationOptions, optional
617
+ :return: Returns the result object.
618
+ If the method is called asynchronously,
619
+ returns the request thread.
620
+ :rtype: GetDataMapResponse
621
+ """
622
+ kwargs['_return_http_data_only'] = True
623
+ if '_preload_content' in kwargs:
624
+ message = "Error! Please call the get_data_map_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
625
+ raise ValueError(message)
626
+ if async_req is not None:
627
+ kwargs['async_req'] = async_req
628
+ return self.get_data_map_with_http_info(scope, request_body, **kwargs) # noqa: E501
629
+
630
+ @validate_arguments
631
+ def get_data_map_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data maps.")], request_body : Annotated[Dict[str, DataMapKey], Field(..., description="The data map keys to look up, each keyed by a unique, ephemeral correlation ID.")], **kwargs) -> ApiResponse: # noqa: E501
632
+ """[EXPERIMENTAL] GetDataMap: Get data map # noqa: E501
633
+
634
+ Retrieve one or more structured result store address definition data maps from a particular scope. Each data map can be identified by its invariant key, which can be thought of as a permanent URL. For each ID, LUSID returns the most recently matched item. In the request, each data map must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data map in the response. The response returns three collections. The first contains successfully retrieved data maps. The second contains those with a valid identifier but that could not be found. The third contains those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
635
+ This method makes a synchronous HTTP request by default. To make an
636
+ asynchronous HTTP request, please pass async_req=True
637
+
638
+ >>> thread = api.get_data_map_with_http_info(scope, request_body, async_req=True)
639
+ >>> result = thread.get()
640
+
641
+ :param scope: The scope from which to retrieve data maps. (required)
642
+ :type scope: str
643
+ :param request_body: The data map keys to look up, each keyed by a unique, ephemeral correlation ID. (required)
644
+ :type request_body: Dict[str, DataMapKey]
645
+ :param async_req: Whether to execute the request asynchronously.
646
+ :type async_req: bool, optional
647
+ :param _preload_content: if False, the ApiResponse.data will
648
+ be set to none and raw_data will store the
649
+ HTTP response body without reading/decoding.
650
+ Default is True.
651
+ :type _preload_content: bool, optional
652
+ :param _return_http_data_only: response data instead of ApiResponse
653
+ object with status code, headers, etc
654
+ :type _return_http_data_only: bool, optional
655
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
656
+ :param opts: Configuration options for this request
657
+ :type opts: ConfigurationOptions, optional
658
+ :param _request_auth: set to override the auth_settings for an a single
659
+ request; this effectively ignores the authentication
660
+ in the spec for a single request.
661
+ :type _request_auth: dict, optional
662
+ :type _content_type: string, optional: force content-type for the request
663
+ :return: Returns the result object.
664
+ If the method is called asynchronously,
665
+ returns the request thread.
666
+ :rtype: tuple(GetDataMapResponse, status_code(int), headers(HTTPHeaderDict))
667
+ """
668
+
669
+ _params = locals()
670
+
671
+ _all_params = [
672
+ 'scope',
673
+ 'request_body'
674
+ ]
675
+ _all_params.extend(
676
+ [
677
+ 'async_req',
678
+ '_return_http_data_only',
679
+ '_preload_content',
680
+ '_request_timeout',
681
+ '_request_auth',
682
+ '_content_type',
683
+ '_headers',
684
+ 'opts'
685
+ ]
686
+ )
687
+
688
+ # validate the arguments
689
+ for _key, _val in _params['kwargs'].items():
690
+ if _key not in _all_params:
691
+ raise ApiTypeError(
692
+ "Got an unexpected keyword argument '%s'"
693
+ " to method get_data_map" % _key
694
+ )
695
+ _params[_key] = _val
696
+ del _params['kwargs']
697
+
698
+ _collection_formats = {}
699
+
700
+ # process the path parameters
701
+ _path_params = {}
702
+ if _params['scope']:
703
+ _path_params['scope'] = _params['scope']
704
+
705
+
706
+ # process the query parameters
707
+ _query_params = []
708
+ # process the header parameters
709
+ _header_params = dict(_params.get('_headers', {}))
710
+ # process the form parameters
711
+ _form_params = []
712
+ _files = {}
713
+ # process the body parameter
714
+ _body_params = None
715
+ if _params['request_body'] is not None:
716
+ _body_params = _params['request_body']
717
+
718
+ # set the HTTP header `Accept`
719
+ _header_params['Accept'] = self.api_client.select_header_accept(
720
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
721
+
722
+ # set the HTTP header `Content-Type`
723
+ _content_types_list = _params.get('_content_type',
724
+ self.api_client.select_header_content_type(
725
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
726
+ if _content_types_list:
727
+ _header_params['Content-Type'] = _content_types_list
728
+
729
+ # authentication setting
730
+ _auth_settings = ['oauth2'] # noqa: E501
731
+
732
+ _response_types_map = {
733
+ '200': "GetDataMapResponse",
734
+ '400': "LusidValidationProblemDetails",
735
+ }
736
+
737
+ return self.api_client.call_api(
738
+ '/api/unitresults/datamap/{scope}/$get', 'POST',
739
+ _path_params,
740
+ _query_params,
741
+ _header_params,
742
+ body=_body_params,
743
+ post_params=_form_params,
744
+ files=_files,
745
+ response_types_map=_response_types_map,
746
+ auth_settings=_auth_settings,
747
+ async_req=_params.get('async_req'),
748
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
749
+ _preload_content=_params.get('_preload_content', True),
750
+ _request_timeout=_params.get('_request_timeout'),
751
+ opts=_params.get('opts'),
752
+ collection_formats=_collection_formats,
753
+ _request_auth=_params.get('_request_auth'))
754
+
755
+ @overload
756
+ async def get_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, max_age : Annotated[Optional[StrictStr], Field(description="The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.")] = None, **kwargs) -> GetStructuredResultDataResponse: # noqa: E501
757
+ ...
758
+
759
+ @overload
760
+ def get_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, max_age : Annotated[Optional[StrictStr], Field(description="The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.")] = None, async_req: Optional[bool]=True, **kwargs) -> GetStructuredResultDataResponse: # noqa: E501
761
+ ...
762
+
763
+ @validate_arguments
764
+ def get_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, max_age : Annotated[Optional[StrictStr], Field(description="The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GetStructuredResultDataResponse, Awaitable[GetStructuredResultDataResponse]]: # noqa: E501
765
+ """GetStructuredResultData: Get structured result data # noqa: E501
766
+
767
+ Retrieve one or more structured result data items from a particular scope. Each item can be identified by its time invariant structured result data identifier. For each ID, LUSID returns the most recently matched item with respect to the provided (or default) effective datetime. An optional maximum age range window can be specified to control how far back to look from the specified effective datetime. LUSID returns the most recent item within this window. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns three collections. The first contains successfully retrieved data items. The second contains those with a valid identifier but that could not be found. The third contains those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
768
+ This method makes a synchronous HTTP request by default. To make an
769
+ asynchronous HTTP request, please pass async_req=True
770
+
771
+ >>> thread = api.get_structured_result_data(scope, request_body, as_at, max_age, async_req=True)
772
+ >>> result = thread.get()
773
+
774
+ :param scope: The scope from which to retrieve data items. (required)
775
+ :type scope: str
776
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
777
+ :type request_body: Dict[str, StructuredResultDataId]
778
+ :param as_at: The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.
779
+ :type as_at: datetime
780
+ :param max_age: The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.
781
+ :type max_age: str
782
+ :param async_req: Whether to execute the request asynchronously.
783
+ :type async_req: bool, optional
784
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
785
+ :param opts: Configuration options for this request
786
+ :type opts: ConfigurationOptions, optional
787
+ :return: Returns the result object.
788
+ If the method is called asynchronously,
789
+ returns the request thread.
790
+ :rtype: GetStructuredResultDataResponse
791
+ """
792
+ kwargs['_return_http_data_only'] = True
793
+ if '_preload_content' in kwargs:
794
+ message = "Error! Please call the get_structured_result_data_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
795
+ raise ValueError(message)
796
+ if async_req is not None:
797
+ kwargs['async_req'] = async_req
798
+ return self.get_structured_result_data_with_http_info(scope, request_body, as_at, max_age, **kwargs) # noqa: E501
799
+
800
+ @validate_arguments
801
+ def get_structured_result_data_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope from which to retrieve data items.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, max_age : Annotated[Optional[StrictStr], Field(description="The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.")] = None, **kwargs) -> ApiResponse: # noqa: E501
802
+ """GetStructuredResultData: Get structured result data # noqa: E501
803
+
804
+ Retrieve one or more structured result data items from a particular scope. Each item can be identified by its time invariant structured result data identifier. For each ID, LUSID returns the most recently matched item with respect to the provided (or default) effective datetime. An optional maximum age range window can be specified to control how far back to look from the specified effective datetime. LUSID returns the most recent item within this window. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns three collections. The first contains successfully retrieved data items. The second contains those with a valid identifier but that could not be found. The third contains those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
805
+ This method makes a synchronous HTTP request by default. To make an
806
+ asynchronous HTTP request, please pass async_req=True
807
+
808
+ >>> thread = api.get_structured_result_data_with_http_info(scope, request_body, as_at, max_age, async_req=True)
809
+ >>> result = thread.get()
810
+
811
+ :param scope: The scope from which to retrieve data items. (required)
812
+ :type scope: str
813
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
814
+ :type request_body: Dict[str, StructuredResultDataId]
815
+ :param as_at: The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.
816
+ :type as_at: datetime
817
+ :param max_age: The duration of the look-back window in ISO8601 time interval format, for example 'P1Y2M3DT4H30M' (1 year, 2 months, 3 days, 4 hours and 30 minutes). This is subtracted from the provided effectiveAt datetime to generate a effective datetime window inside which a data item must exist to be retrieved.
818
+ :type max_age: str
819
+ :param async_req: Whether to execute the request asynchronously.
820
+ :type async_req: bool, optional
821
+ :param _preload_content: if False, the ApiResponse.data will
822
+ be set to none and raw_data will store the
823
+ HTTP response body without reading/decoding.
824
+ Default is True.
825
+ :type _preload_content: bool, optional
826
+ :param _return_http_data_only: response data instead of ApiResponse
827
+ object with status code, headers, etc
828
+ :type _return_http_data_only: bool, optional
829
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
830
+ :param opts: Configuration options for this request
831
+ :type opts: ConfigurationOptions, optional
832
+ :param _request_auth: set to override the auth_settings for an a single
833
+ request; this effectively ignores the authentication
834
+ in the spec for a single request.
835
+ :type _request_auth: dict, optional
836
+ :type _content_type: string, optional: force content-type for the request
837
+ :return: Returns the result object.
838
+ If the method is called asynchronously,
839
+ returns the request thread.
840
+ :rtype: tuple(GetStructuredResultDataResponse, status_code(int), headers(HTTPHeaderDict))
841
+ """
842
+
843
+ _params = locals()
844
+
845
+ _all_params = [
846
+ 'scope',
847
+ 'request_body',
848
+ 'as_at',
849
+ 'max_age'
850
+ ]
851
+ _all_params.extend(
852
+ [
853
+ 'async_req',
854
+ '_return_http_data_only',
855
+ '_preload_content',
856
+ '_request_timeout',
857
+ '_request_auth',
858
+ '_content_type',
859
+ '_headers',
860
+ 'opts'
861
+ ]
862
+ )
863
+
864
+ # validate the arguments
865
+ for _key, _val in _params['kwargs'].items():
866
+ if _key not in _all_params:
867
+ raise ApiTypeError(
868
+ "Got an unexpected keyword argument '%s'"
869
+ " to method get_structured_result_data" % _key
870
+ )
871
+ _params[_key] = _val
872
+ del _params['kwargs']
873
+
874
+ _collection_formats = {}
875
+
876
+ # process the path parameters
877
+ _path_params = {}
878
+ if _params['scope']:
879
+ _path_params['scope'] = _params['scope']
880
+
881
+
882
+ # process the query parameters
883
+ _query_params = []
884
+ if _params.get('as_at') is not None: # noqa: E501
885
+ if isinstance(_params['as_at'], datetime):
886
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
887
+ else:
888
+ _query_params.append(('asAt', _params['as_at']))
889
+
890
+ if _params.get('max_age') is not None: # noqa: E501
891
+ _query_params.append(('maxAge', _params['max_age']))
892
+
893
+ # process the header parameters
894
+ _header_params = dict(_params.get('_headers', {}))
895
+ # process the form parameters
896
+ _form_params = []
897
+ _files = {}
898
+ # process the body parameter
899
+ _body_params = None
900
+ if _params['request_body'] is not None:
901
+ _body_params = _params['request_body']
902
+
903
+ # set the HTTP header `Accept`
904
+ _header_params['Accept'] = self.api_client.select_header_accept(
905
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
906
+
907
+ # set the HTTP header `Content-Type`
908
+ _content_types_list = _params.get('_content_type',
909
+ self.api_client.select_header_content_type(
910
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
911
+ if _content_types_list:
912
+ _header_params['Content-Type'] = _content_types_list
913
+
914
+ # authentication setting
915
+ _auth_settings = ['oauth2'] # noqa: E501
916
+
917
+ _response_types_map = {
918
+ '200': "GetStructuredResultDataResponse",
919
+ '400': "LusidValidationProblemDetails",
920
+ }
921
+
922
+ return self.api_client.call_api(
923
+ '/api/unitresults/{scope}/$get', 'POST',
924
+ _path_params,
925
+ _query_params,
926
+ _header_params,
927
+ body=_body_params,
928
+ post_params=_form_params,
929
+ files=_files,
930
+ response_types_map=_response_types_map,
931
+ auth_settings=_auth_settings,
932
+ async_req=_params.get('async_req'),
933
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
934
+ _preload_content=_params.get('_preload_content', True),
935
+ _request_timeout=_params.get('_request_timeout'),
936
+ opts=_params.get('opts'),
937
+ collection_formats=_collection_formats,
938
+ _request_auth=_params.get('_request_auth'))
939
+
940
+ @overload
941
+ async def get_virtual_document(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, **kwargs) -> GetVirtualDocumentResponse: # noqa: E501
942
+ ...
943
+
944
+ @overload
945
+ def get_virtual_document(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> GetVirtualDocumentResponse: # noqa: E501
946
+ ...
947
+
948
+ @validate_arguments
949
+ def get_virtual_document(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GetVirtualDocumentResponse, Awaitable[GetVirtualDocumentResponse]]: # noqa: E501
950
+ """[EXPERIMENTAL] GetVirtualDocument: Get Virtual Documents # noqa: E501
951
+
952
+ Retrieve one or more virtual documents from a particular scope. Each item can be identified by its time invariant structured result data identifier. For each ID, LUSID returns the most recently matched item with respect to the provided effective datetime. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns two collections. The first contains successfully retrieved data items. The second contains those with a valid identifier but that could not be found, or those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
953
+ This method makes a synchronous HTTP request by default. To make an
954
+ asynchronous HTTP request, please pass async_req=True
955
+
956
+ >>> thread = api.get_virtual_document(scope, request_body, as_at, async_req=True)
957
+ >>> result = thread.get()
958
+
959
+ :param scope: The scope in which to construct the virtual documents. (required)
960
+ :type scope: str
961
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
962
+ :type request_body: Dict[str, StructuredResultDataId]
963
+ :param as_at: The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.
964
+ :type as_at: datetime
965
+ :param async_req: Whether to execute the request asynchronously.
966
+ :type async_req: bool, optional
967
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
968
+ :param opts: Configuration options for this request
969
+ :type opts: ConfigurationOptions, optional
970
+ :return: Returns the result object.
971
+ If the method is called asynchronously,
972
+ returns the request thread.
973
+ :rtype: GetVirtualDocumentResponse
974
+ """
975
+ kwargs['_return_http_data_only'] = True
976
+ if '_preload_content' in kwargs:
977
+ message = "Error! Please call the get_virtual_document_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
978
+ raise ValueError(message)
979
+ if async_req is not None:
980
+ kwargs['async_req'] = async_req
981
+ return self.get_virtual_document_with_http_info(scope, request_body, as_at, **kwargs) # noqa: E501
982
+
983
+ @validate_arguments
984
+ def get_virtual_document_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, StructuredResultDataId], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
985
+ """[EXPERIMENTAL] GetVirtualDocument: Get Virtual Documents # noqa: E501
986
+
987
+ Retrieve one or more virtual documents from a particular scope. Each item can be identified by its time invariant structured result data identifier. For each ID, LUSID returns the most recently matched item with respect to the provided effective datetime. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns two collections. The first contains successfully retrieved data items. The second contains those with a valid identifier but that could not be found, or those that failed because LUSID could not construct a valid identifier from the request. For the IDs that failed to resolve or could not be found, a reason is provided. It is important to check the failed sets for any unsuccessful results. # noqa: E501
988
+ This method makes a synchronous HTTP request by default. To make an
989
+ asynchronous HTTP request, please pass async_req=True
990
+
991
+ >>> thread = api.get_virtual_document_with_http_info(scope, request_body, as_at, async_req=True)
992
+ >>> result = thread.get()
993
+
994
+ :param scope: The scope in which to construct the virtual documents. (required)
995
+ :type scope: str
996
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
997
+ :type request_body: Dict[str, StructuredResultDataId]
998
+ :param as_at: The asAt datetime at which to retrieve the structured result data. Defaults to returning the latest version if not specified.
999
+ :type as_at: datetime
1000
+ :param async_req: Whether to execute the request asynchronously.
1001
+ :type async_req: bool, optional
1002
+ :param _preload_content: if False, the ApiResponse.data will
1003
+ be set to none and raw_data will store the
1004
+ HTTP response body without reading/decoding.
1005
+ Default is True.
1006
+ :type _preload_content: bool, optional
1007
+ :param _return_http_data_only: response data instead of ApiResponse
1008
+ object with status code, headers, etc
1009
+ :type _return_http_data_only: bool, optional
1010
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1011
+ :param opts: Configuration options for this request
1012
+ :type opts: ConfigurationOptions, optional
1013
+ :param _request_auth: set to override the auth_settings for an a single
1014
+ request; this effectively ignores the authentication
1015
+ in the spec for a single request.
1016
+ :type _request_auth: dict, optional
1017
+ :type _content_type: string, optional: force content-type for the request
1018
+ :return: Returns the result object.
1019
+ If the method is called asynchronously,
1020
+ returns the request thread.
1021
+ :rtype: tuple(GetVirtualDocumentResponse, status_code(int), headers(HTTPHeaderDict))
1022
+ """
1023
+
1024
+ _params = locals()
1025
+
1026
+ _all_params = [
1027
+ 'scope',
1028
+ 'request_body',
1029
+ 'as_at'
1030
+ ]
1031
+ _all_params.extend(
1032
+ [
1033
+ 'async_req',
1034
+ '_return_http_data_only',
1035
+ '_preload_content',
1036
+ '_request_timeout',
1037
+ '_request_auth',
1038
+ '_content_type',
1039
+ '_headers',
1040
+ 'opts'
1041
+ ]
1042
+ )
1043
+
1044
+ # validate the arguments
1045
+ for _key, _val in _params['kwargs'].items():
1046
+ if _key not in _all_params:
1047
+ raise ApiTypeError(
1048
+ "Got an unexpected keyword argument '%s'"
1049
+ " to method get_virtual_document" % _key
1050
+ )
1051
+ _params[_key] = _val
1052
+ del _params['kwargs']
1053
+
1054
+ _collection_formats = {}
1055
+
1056
+ # process the path parameters
1057
+ _path_params = {}
1058
+ if _params['scope']:
1059
+ _path_params['scope'] = _params['scope']
1060
+
1061
+
1062
+ # process the query parameters
1063
+ _query_params = []
1064
+ if _params.get('as_at') is not None: # noqa: E501
1065
+ if isinstance(_params['as_at'], datetime):
1066
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1067
+ else:
1068
+ _query_params.append(('asAt', _params['as_at']))
1069
+
1070
+ # process the header parameters
1071
+ _header_params = dict(_params.get('_headers', {}))
1072
+ # process the form parameters
1073
+ _form_params = []
1074
+ _files = {}
1075
+ # process the body parameter
1076
+ _body_params = None
1077
+ if _params['request_body'] is not None:
1078
+ _body_params = _params['request_body']
1079
+
1080
+ # set the HTTP header `Accept`
1081
+ _header_params['Accept'] = self.api_client.select_header_accept(
1082
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1083
+
1084
+ # set the HTTP header `Content-Type`
1085
+ _content_types_list = _params.get('_content_type',
1086
+ self.api_client.select_header_content_type(
1087
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1088
+ if _content_types_list:
1089
+ _header_params['Content-Type'] = _content_types_list
1090
+
1091
+ # authentication setting
1092
+ _auth_settings = ['oauth2'] # noqa: E501
1093
+
1094
+ _response_types_map = {
1095
+ '200': "GetVirtualDocumentResponse",
1096
+ '400': "LusidValidationProblemDetails",
1097
+ }
1098
+
1099
+ return self.api_client.call_api(
1100
+ '/api/unitresults/virtualdocument/{scope}/$get', 'POST',
1101
+ _path_params,
1102
+ _query_params,
1103
+ _header_params,
1104
+ body=_body_params,
1105
+ post_params=_form_params,
1106
+ files=_files,
1107
+ response_types_map=_response_types_map,
1108
+ auth_settings=_auth_settings,
1109
+ async_req=_params.get('async_req'),
1110
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1111
+ _preload_content=_params.get('_preload_content', True),
1112
+ _request_timeout=_params.get('_request_timeout'),
1113
+ opts=_params.get('opts'),
1114
+ collection_formats=_collection_formats,
1115
+ _request_auth=_params.get('_request_auth'))
1116
+
1117
+ @overload
1118
+ async def get_virtual_document_rows(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope in which to retrieve the virtual document.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the virtual document to retrieve.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the virtual document to retrieve.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the virtual document to retrieve.")], effective_at : Annotated[StrictStr, Field(..., description="The effectiveAt datetime at which to retrieve the virtual document.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the virtual document. Defaults to returning the latest version 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 virtual document rows from a previous call to list virtual document rows. 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 number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfVirtualRow: # noqa: E501
1119
+ ...
1120
+
1121
+ @overload
1122
+ def get_virtual_document_rows(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope in which to retrieve the virtual document.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the virtual document to retrieve.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the virtual document to retrieve.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the virtual document to retrieve.")], effective_at : Annotated[StrictStr, Field(..., description="The effectiveAt datetime at which to retrieve the virtual document.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the virtual document. Defaults to returning the latest version 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 virtual document rows from a previous call to list virtual document rows. 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 number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfVirtualRow: # noqa: E501
1123
+ ...
1124
+
1125
+ @validate_arguments
1126
+ def get_virtual_document_rows(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope in which to retrieve the virtual document.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the virtual document to retrieve.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the virtual document to retrieve.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the virtual document to retrieve.")], effective_at : Annotated[StrictStr, Field(..., description="The effectiveAt datetime at which to retrieve the virtual document.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the virtual document. Defaults to returning the latest version 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 virtual document rows from a previous call to list virtual document rows. 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 number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfVirtualRow, Awaitable[PagedResourceListOfVirtualRow]]: # noqa: E501
260
1127
  """[EARLY ACCESS] GetVirtualDocumentRows: Get Virtual Document Rows # noqa: E501
261
1128
 
262
1129
  Retrieve the rows of the virtual document with the specified identifiers and the given effectiveAt date time. Get virtual document rows merges multiple StructuredResultData items upserted with UpsertStructuredResultData for a single StructuredResultDataId. Since an item of StructuredResultData is always upserted with a StructuredResultDataId, of which effectiveAt is a part, then merging across the asAt dimension is supported but not merging across the effectiveAt dimension. # noqa: E501
263
1130
  This method makes a synchronous HTTP request by default. To make an
264
1131
  asynchronous HTTP request, please pass async_req=True
265
1132
 
266
- >>> thread = api.get_virtual_document_rows(scope, code, source, result_type, effective_at, async_req=True)
1133
+ >>> thread = api.get_virtual_document_rows(scope, code, source, result_type, effective_at, as_at, page, limit, filter, async_req=True)
267
1134
  >>> result = thread.get()
268
1135
 
269
1136
  :param scope: The scope in which to retrieve the virtual document. (required)
@@ -286,30 +1153,31 @@ class StructuredResultDataApi(object):
286
1153
  :type filter: str
287
1154
  :param async_req: Whether to execute the request asynchronously.
288
1155
  :type async_req: bool, optional
289
- :param _preload_content: if False, the urllib3.HTTPResponse object will
290
- be returned without reading/decoding response
291
- data. Default is True.
292
- :type _preload_content: bool, optional
293
- :param _request_timeout: timeout setting for this request. If one
294
- number provided, it will be total request
295
- timeout. It can also be a pair (tuple) of
296
- (connection, read) timeouts.
1156
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1157
+ :param opts: Configuration options for this request
1158
+ :type opts: ConfigurationOptions, optional
297
1159
  :return: Returns the result object.
298
1160
  If the method is called asynchronously,
299
1161
  returns the request thread.
300
1162
  :rtype: PagedResourceListOfVirtualRow
301
1163
  """
302
1164
  kwargs['_return_http_data_only'] = True
303
- return self.get_virtual_document_rows_with_http_info(scope, code, source, result_type, effective_at, **kwargs) # noqa: E501
1165
+ if '_preload_content' in kwargs:
1166
+ message = "Error! Please call the get_virtual_document_rows_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1167
+ raise ValueError(message)
1168
+ if async_req is not None:
1169
+ kwargs['async_req'] = async_req
1170
+ return self.get_virtual_document_rows_with_http_info(scope, code, source, result_type, effective_at, as_at, page, limit, filter, **kwargs) # noqa: E501
304
1171
 
305
- def get_virtual_document_rows_with_http_info(self, scope, code, source, result_type, effective_at, **kwargs): # noqa: E501
1172
+ @validate_arguments
1173
+ def get_virtual_document_rows_with_http_info(self, scope : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The scope in which to retrieve the virtual document.")], code : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The code of the virtual document to retrieve.")], source : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The source of the virtual document to retrieve.")], result_type : Annotated[StrictStr, Field(..., description="The result type of the virtual document to retrieve.")], effective_at : Annotated[StrictStr, Field(..., description="The effectiveAt datetime at which to retrieve the virtual document.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the virtual document. Defaults to returning the latest version 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 virtual document rows from a previous call to list virtual document rows. 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 number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
306
1174
  """[EARLY ACCESS] GetVirtualDocumentRows: Get Virtual Document Rows # noqa: E501
307
1175
 
308
1176
  Retrieve the rows of the virtual document with the specified identifiers and the given effectiveAt date time. Get virtual document rows merges multiple StructuredResultData items upserted with UpsertStructuredResultData for a single StructuredResultDataId. Since an item of StructuredResultData is always upserted with a StructuredResultDataId, of which effectiveAt is a part, then merging across the asAt dimension is supported but not merging across the effectiveAt dimension. # noqa: E501
309
1177
  This method makes a synchronous HTTP request by default. To make an
310
1178
  asynchronous HTTP request, please pass async_req=True
311
1179
 
312
- >>> thread = api.get_virtual_document_rows_with_http_info(scope, code, source, result_type, effective_at, async_req=True)
1180
+ >>> thread = api.get_virtual_document_rows_with_http_info(scope, code, source, result_type, effective_at, as_at, page, limit, filter, async_req=True)
313
1181
  >>> result = thread.get()
314
1182
 
315
1183
  :param scope: The scope in which to retrieve the virtual document. (required)
@@ -332,30 +1200,31 @@ class StructuredResultDataApi(object):
332
1200
  :type filter: str
333
1201
  :param async_req: Whether to execute the request asynchronously.
334
1202
  :type async_req: bool, optional
335
- :param _return_http_data_only: response data without head status code
336
- and headers
337
- :type _return_http_data_only: bool, optional
338
- :param _preload_content: if False, the urllib3.HTTPResponse object will
339
- be returned without reading/decoding response
340
- data. Default is True.
1203
+ :param _preload_content: if False, the ApiResponse.data will
1204
+ be set to none and raw_data will store the
1205
+ HTTP response body without reading/decoding.
1206
+ Default is True.
341
1207
  :type _preload_content: bool, optional
342
- :param _request_timeout: timeout setting for this request. If one
343
- number provided, it will be total request
344
- timeout. It can also be a pair (tuple) of
345
- (connection, read) timeouts.
1208
+ :param _return_http_data_only: response data instead of ApiResponse
1209
+ object with status code, headers, etc
1210
+ :type _return_http_data_only: bool, optional
1211
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1212
+ :param opts: Configuration options for this request
1213
+ :type opts: ConfigurationOptions, optional
346
1214
  :param _request_auth: set to override the auth_settings for an a single
347
1215
  request; this effectively ignores the authentication
348
1216
  in the spec for a single request.
349
1217
  :type _request_auth: dict, optional
350
- :return: Returns the result object, the HTTP status code, and the headers.
1218
+ :type _content_type: string, optional: force content-type for the request
1219
+ :return: Returns the result object.
351
1220
  If the method is called asynchronously,
352
1221
  returns the request thread.
353
- :rtype: (PagedResourceListOfVirtualRow, int, HTTPHeaderDict)
1222
+ :rtype: tuple(PagedResourceListOfVirtualRow, status_code(int), headers(HTTPHeaderDict))
354
1223
  """
355
1224
 
356
- local_var_params = locals()
1225
+ _params = locals()
357
1226
 
358
- all_params = [
1227
+ _all_params = [
359
1228
  'scope',
360
1229
  'code',
361
1230
  'source',
@@ -366,152 +1235,431 @@ class StructuredResultDataApi(object):
366
1235
  'limit',
367
1236
  'filter'
368
1237
  ]
369
- all_params.extend(
1238
+ _all_params.extend(
370
1239
  [
371
1240
  'async_req',
372
1241
  '_return_http_data_only',
373
1242
  '_preload_content',
374
1243
  '_request_timeout',
375
1244
  '_request_auth',
376
- '_headers'
1245
+ '_content_type',
1246
+ '_headers',
1247
+ 'opts'
377
1248
  ]
378
1249
  )
379
1250
 
380
- for key, val in six.iteritems(local_var_params['kwargs']):
381
- if key not in all_params:
1251
+ # validate the arguments
1252
+ for _key, _val in _params['kwargs'].items():
1253
+ if _key not in _all_params:
382
1254
  raise ApiTypeError(
383
1255
  "Got an unexpected keyword argument '%s'"
384
- " to method get_virtual_document_rows" % key
1256
+ " to method get_virtual_document_rows" % _key
385
1257
  )
386
- local_var_params[key] = val
387
- del local_var_params['kwargs']
388
- # verify the required parameter 'scope' is set
389
- if self.api_client.client_side_validation and ('scope' not in local_var_params or # noqa: E501
390
- local_var_params['scope'] is None): # noqa: E501
391
- raise ApiValueError("Missing the required parameter `scope` when calling `get_virtual_document_rows`") # noqa: E501
392
- # verify the required parameter 'code' is set
393
- if self.api_client.client_side_validation and ('code' not in local_var_params or # noqa: E501
394
- local_var_params['code'] is None): # noqa: E501
395
- raise ApiValueError("Missing the required parameter `code` when calling `get_virtual_document_rows`") # noqa: E501
396
- # verify the required parameter 'source' is set
397
- if self.api_client.client_side_validation and ('source' not in local_var_params or # noqa: E501
398
- local_var_params['source'] is None): # noqa: E501
399
- raise ApiValueError("Missing the required parameter `source` when calling `get_virtual_document_rows`") # noqa: E501
400
- # verify the required parameter 'result_type' is set
401
- if self.api_client.client_side_validation and ('result_type' not in local_var_params or # noqa: E501
402
- local_var_params['result_type'] is None): # noqa: E501
403
- raise ApiValueError("Missing the required parameter `result_type` when calling `get_virtual_document_rows`") # noqa: E501
404
- # verify the required parameter 'effective_at' is set
405
- if self.api_client.client_side_validation and ('effective_at' not in local_var_params or # noqa: E501
406
- local_var_params['effective_at'] is None): # noqa: E501
407
- raise ApiValueError("Missing the required parameter `effective_at` when calling `get_virtual_document_rows`") # noqa: E501
408
-
409
- if self.api_client.client_side_validation and ('scope' in local_var_params and # noqa: E501
410
- len(local_var_params['scope']) > 256): # noqa: E501
411
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_virtual_document_rows`, length must be less than or equal to `256`") # noqa: E501
412
- if self.api_client.client_side_validation and ('scope' in local_var_params and # noqa: E501
413
- len(local_var_params['scope']) < 1): # noqa: E501
414
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_virtual_document_rows`, length must be greater than or equal to `1`") # noqa: E501
415
- if self.api_client.client_side_validation and 'scope' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['scope']): # noqa: E501
416
- raise ApiValueError("Invalid value for parameter `scope` when calling `get_virtual_document_rows`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
417
- if self.api_client.client_side_validation and ('code' in local_var_params and # noqa: E501
418
- len(local_var_params['code']) > 256): # noqa: E501
419
- raise ApiValueError("Invalid value for parameter `code` when calling `get_virtual_document_rows`, length must be less than or equal to `256`") # noqa: E501
420
- if self.api_client.client_side_validation and ('code' in local_var_params and # noqa: E501
421
- len(local_var_params['code']) < 1): # noqa: E501
422
- raise ApiValueError("Invalid value for parameter `code` when calling `get_virtual_document_rows`, length must be greater than or equal to `1`") # noqa: E501
423
- if self.api_client.client_side_validation and 'code' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['code']): # noqa: E501
424
- raise ApiValueError("Invalid value for parameter `code` when calling `get_virtual_document_rows`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
425
- if self.api_client.client_side_validation and ('source' in local_var_params and # noqa: E501
426
- len(local_var_params['source']) > 256): # noqa: E501
427
- raise ApiValueError("Invalid value for parameter `source` when calling `get_virtual_document_rows`, length must be less than or equal to `256`") # noqa: E501
428
- if self.api_client.client_side_validation and ('source' in local_var_params and # noqa: E501
429
- len(local_var_params['source']) < 1): # noqa: E501
430
- raise ApiValueError("Invalid value for parameter `source` when calling `get_virtual_document_rows`, length must be greater than or equal to `1`") # noqa: E501
431
- if self.api_client.client_side_validation and 'source' in local_var_params and not re.search(r'^[a-zA-Z0-9\-_]+$', local_var_params['source']): # noqa: E501
432
- raise ApiValueError("Invalid value for parameter `source` when calling `get_virtual_document_rows`, must conform to the pattern `/^[a-zA-Z0-9\-_]+$/`") # noqa: E501
433
- if self.api_client.client_side_validation and ('page' in local_var_params and # noqa: E501
434
- len(local_var_params['page']) > 500): # noqa: E501
435
- raise ApiValueError("Invalid value for parameter `page` when calling `get_virtual_document_rows`, length must be less than or equal to `500`") # noqa: E501
436
- if self.api_client.client_side_validation and ('page' in local_var_params and # noqa: E501
437
- len(local_var_params['page']) < 1): # noqa: E501
438
- raise ApiValueError("Invalid value for parameter `page` when calling `get_virtual_document_rows`, length must be greater than or equal to `1`") # noqa: E501
439
- if self.api_client.client_side_validation and 'page' in local_var_params and not re.search(r'^[a-zA-Z0-9\+\/]*={0,3}$', local_var_params['page']): # noqa: E501
440
- raise ApiValueError("Invalid value for parameter `page` when calling `get_virtual_document_rows`, must conform to the pattern `/^[a-zA-Z0-9\+\/]*={0,3}$/`") # noqa: E501
441
- if self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 5000: # noqa: E501
442
- raise ApiValueError("Invalid value for parameter `limit` when calling `get_virtual_document_rows`, must be a value less than or equal to `5000`") # noqa: E501
443
- if self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1: # noqa: E501
444
- raise ApiValueError("Invalid value for parameter `limit` when calling `get_virtual_document_rows`, must be a value greater than or equal to `1`") # noqa: E501
445
- if self.api_client.client_side_validation and ('filter' in local_var_params and # noqa: E501
446
- len(local_var_params['filter']) > 16384): # noqa: E501
447
- raise ApiValueError("Invalid value for parameter `filter` when calling `get_virtual_document_rows`, length must be less than or equal to `16384`") # noqa: E501
448
- if self.api_client.client_side_validation and ('filter' in local_var_params and # noqa: E501
449
- len(local_var_params['filter']) < 0): # noqa: E501
450
- raise ApiValueError("Invalid value for parameter `filter` when calling `get_virtual_document_rows`, length must be greater than or equal to `0`") # noqa: E501
451
- if self.api_client.client_side_validation and 'filter' in local_var_params and not re.search(r'^[\s\S]*$', local_var_params['filter']): # noqa: E501
452
- raise ApiValueError("Invalid value for parameter `filter` when calling `get_virtual_document_rows`, must conform to the pattern `/^[\s\S]*$/`") # noqa: E501
453
- collection_formats = {}
454
-
455
- path_params = {}
456
- if 'scope' in local_var_params:
457
- path_params['scope'] = local_var_params['scope'] # noqa: E501
458
- if 'code' in local_var_params:
459
- path_params['code'] = local_var_params['code'] # noqa: E501
460
- if 'source' in local_var_params:
461
- path_params['source'] = local_var_params['source'] # noqa: E501
462
- if 'result_type' in local_var_params:
463
- path_params['resultType'] = local_var_params['result_type'] # noqa: E501
464
-
465
- query_params = []
466
- if 'effective_at' in local_var_params and local_var_params['effective_at'] is not None: # noqa: E501
467
- query_params.append(('effectiveAt', local_var_params['effective_at'])) # noqa: E501
468
- if 'as_at' in local_var_params and local_var_params['as_at'] is not None: # noqa: E501
469
- query_params.append(('asAt', local_var_params['as_at'])) # noqa: E501
470
- if 'page' in local_var_params and local_var_params['page'] is not None: # noqa: E501
471
- query_params.append(('page', local_var_params['page'])) # noqa: E501
472
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
473
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
474
- if 'filter' in local_var_params and local_var_params['filter'] is not None: # noqa: E501
475
- query_params.append(('filter', local_var_params['filter'])) # noqa: E501
476
-
477
- header_params = dict(local_var_params.get('_headers', {}))
478
-
479
- form_params = []
480
- local_var_files = {}
481
-
482
- body_params = None
483
- # HTTP header `Accept`
484
- header_params['Accept'] = self.api_client.select_header_accept(
485
- ['text/plain', 'application/json', 'text/json']) # noqa: E501
1258
+ _params[_key] = _val
1259
+ del _params['kwargs']
1260
+
1261
+ _collection_formats = {}
1262
+
1263
+ # process the path parameters
1264
+ _path_params = {}
1265
+ if _params['scope']:
1266
+ _path_params['scope'] = _params['scope']
1267
+
1268
+ if _params['code']:
1269
+ _path_params['code'] = _params['code']
1270
+
1271
+ if _params['source']:
1272
+ _path_params['source'] = _params['source']
1273
+
1274
+ if _params['result_type']:
1275
+ _path_params['resultType'] = _params['result_type']
1276
+
1277
+
1278
+ # process the query parameters
1279
+ _query_params = []
1280
+ if _params.get('effective_at') is not None: # noqa: E501
1281
+ _query_params.append(('effectiveAt', _params['effective_at']))
486
1282
 
487
- header_params['Accept-Encoding'] = "gzip, deflate, br"
1283
+ if _params.get('as_at') is not None: # noqa: E501
1284
+ if isinstance(_params['as_at'], datetime):
1285
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1286
+ else:
1287
+ _query_params.append(('asAt', _params['as_at']))
488
1288
 
1289
+ if _params.get('page') is not None: # noqa: E501
1290
+ _query_params.append(('page', _params['page']))
489
1291
 
490
- # set the LUSID header
491
- header_params['X-LUSID-SDK-Language'] = 'Python'
492
- header_params['X-LUSID-SDK-Version'] = '1.1.131'
1292
+ if _params.get('limit') is not None: # noqa: E501
1293
+ _query_params.append(('limit', _params['limit']))
493
1294
 
494
- # Authentication setting
495
- auth_settings = ['oauth2'] # noqa: E501
1295
+ if _params.get('filter') is not None: # noqa: E501
1296
+ _query_params.append(('filter', _params['filter']))
496
1297
 
497
- response_types_map = {
498
- 200: "PagedResourceListOfVirtualRow",
499
- 400: "LusidValidationProblemDetails",
1298
+ # process the header parameters
1299
+ _header_params = dict(_params.get('_headers', {}))
1300
+ # process the form parameters
1301
+ _form_params = []
1302
+ _files = {}
1303
+ # process the body parameter
1304
+ _body_params = None
1305
+ # set the HTTP header `Accept`
1306
+ _header_params['Accept'] = self.api_client.select_header_accept(
1307
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1308
+
1309
+ # authentication setting
1310
+ _auth_settings = ['oauth2'] # noqa: E501
1311
+
1312
+ _response_types_map = {
1313
+ '200': "PagedResourceListOfVirtualRow",
1314
+ '400': "LusidValidationProblemDetails",
500
1315
  }
501
1316
 
502
1317
  return self.api_client.call_api(
503
1318
  '/api/unitresults/virtualdocument/{scope}/{code}/{source}/{resultType}', 'GET',
504
- path_params,
505
- query_params,
506
- header_params,
507
- body=body_params,
508
- post_params=form_params,
509
- files=local_var_files,
510
- response_types_map=response_types_map,
511
- auth_settings=auth_settings,
512
- async_req=local_var_params.get('async_req'),
513
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
514
- _preload_content=local_var_params.get('_preload_content', True),
515
- _request_timeout=local_var_params.get('_request_timeout'),
516
- collection_formats=collection_formats,
517
- _request_auth=local_var_params.get('_request_auth'))
1319
+ _path_params,
1320
+ _query_params,
1321
+ _header_params,
1322
+ body=_body_params,
1323
+ post_params=_form_params,
1324
+ files=_files,
1325
+ response_types_map=_response_types_map,
1326
+ auth_settings=_auth_settings,
1327
+ async_req=_params.get('async_req'),
1328
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1329
+ _preload_content=_params.get('_preload_content', True),
1330
+ _request_timeout=_params.get('_request_timeout'),
1331
+ opts=_params.get('opts'),
1332
+ collection_formats=_collection_formats,
1333
+ _request_auth=_params.get('_request_auth'))
1334
+
1335
+ @overload
1336
+ async def upsert_result_value(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, UpsertResultValuesDataRequest], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
1337
+ ...
1338
+
1339
+ @overload
1340
+ def upsert_result_value(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, UpsertResultValuesDataRequest], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=True, **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
1341
+ ...
1342
+
1343
+ @validate_arguments
1344
+ def upsert_result_value(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, UpsertResultValuesDataRequest], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertStructuredDataResponse, Awaitable[UpsertStructuredDataResponse]]: # noqa: E501
1345
+ """[EXPERIMENTAL] UpsertResultValue: Upsert result value # noqa: E501
1346
+
1347
+ Create or update one or more Upsert one or more result values in a particular scope. An item is updated if it already exists and created if it does not. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully created or updated data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
1348
+ This method makes a synchronous HTTP request by default. To make an
1349
+ asynchronous HTTP request, please pass async_req=True
1350
+
1351
+ >>> thread = api.upsert_result_value(scope, request_body, async_req=True)
1352
+ >>> result = thread.get()
1353
+
1354
+ :param scope: The scope in which to construct the virtual documents. (required)
1355
+ :type scope: str
1356
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
1357
+ :type request_body: Dict[str, UpsertResultValuesDataRequest]
1358
+ :param async_req: Whether to execute the request asynchronously.
1359
+ :type async_req: bool, optional
1360
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1361
+ :param opts: Configuration options for this request
1362
+ :type opts: ConfigurationOptions, optional
1363
+ :return: Returns the result object.
1364
+ If the method is called asynchronously,
1365
+ returns the request thread.
1366
+ :rtype: UpsertStructuredDataResponse
1367
+ """
1368
+ kwargs['_return_http_data_only'] = True
1369
+ if '_preload_content' in kwargs:
1370
+ message = "Error! Please call the upsert_result_value_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1371
+ raise ValueError(message)
1372
+ if async_req is not None:
1373
+ kwargs['async_req'] = async_req
1374
+ return self.upsert_result_value_with_http_info(scope, request_body, **kwargs) # noqa: E501
1375
+
1376
+ @validate_arguments
1377
+ def upsert_result_value_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to construct the virtual documents.")], request_body : Annotated[Dict[str, UpsertResultValuesDataRequest], Field(..., description="The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID.")], **kwargs) -> ApiResponse: # noqa: E501
1378
+ """[EXPERIMENTAL] UpsertResultValue: Upsert result value # noqa: E501
1379
+
1380
+ Create or update one or more Upsert one or more result values in a particular scope. An item is updated if it already exists and created if it does not. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully created or updated data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
1381
+ This method makes a synchronous HTTP request by default. To make an
1382
+ asynchronous HTTP request, please pass async_req=True
1383
+
1384
+ >>> thread = api.upsert_result_value_with_http_info(scope, request_body, async_req=True)
1385
+ >>> result = thread.get()
1386
+
1387
+ :param scope: The scope in which to construct the virtual documents. (required)
1388
+ :type scope: str
1389
+ :param request_body: The time invariant set of structured data identifiers to retrieve, keyed by a unique, ephemeral correlation ID. (required)
1390
+ :type request_body: Dict[str, UpsertResultValuesDataRequest]
1391
+ :param async_req: Whether to execute the request asynchronously.
1392
+ :type async_req: bool, optional
1393
+ :param _preload_content: if False, the ApiResponse.data will
1394
+ be set to none and raw_data will store the
1395
+ HTTP response body without reading/decoding.
1396
+ Default is True.
1397
+ :type _preload_content: bool, optional
1398
+ :param _return_http_data_only: response data instead of ApiResponse
1399
+ object with status code, headers, etc
1400
+ :type _return_http_data_only: bool, optional
1401
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1402
+ :param opts: Configuration options for this request
1403
+ :type opts: ConfigurationOptions, optional
1404
+ :param _request_auth: set to override the auth_settings for an a single
1405
+ request; this effectively ignores the authentication
1406
+ in the spec for a single request.
1407
+ :type _request_auth: dict, optional
1408
+ :type _content_type: string, optional: force content-type for the request
1409
+ :return: Returns the result object.
1410
+ If the method is called asynchronously,
1411
+ returns the request thread.
1412
+ :rtype: tuple(UpsertStructuredDataResponse, status_code(int), headers(HTTPHeaderDict))
1413
+ """
1414
+
1415
+ _params = locals()
1416
+
1417
+ _all_params = [
1418
+ 'scope',
1419
+ 'request_body'
1420
+ ]
1421
+ _all_params.extend(
1422
+ [
1423
+ 'async_req',
1424
+ '_return_http_data_only',
1425
+ '_preload_content',
1426
+ '_request_timeout',
1427
+ '_request_auth',
1428
+ '_content_type',
1429
+ '_headers',
1430
+ 'opts'
1431
+ ]
1432
+ )
1433
+
1434
+ # validate the arguments
1435
+ for _key, _val in _params['kwargs'].items():
1436
+ if _key not in _all_params:
1437
+ raise ApiTypeError(
1438
+ "Got an unexpected keyword argument '%s'"
1439
+ " to method upsert_result_value" % _key
1440
+ )
1441
+ _params[_key] = _val
1442
+ del _params['kwargs']
1443
+
1444
+ _collection_formats = {}
1445
+
1446
+ # process the path parameters
1447
+ _path_params = {}
1448
+ if _params['scope']:
1449
+ _path_params['scope'] = _params['scope']
1450
+
1451
+
1452
+ # process the query parameters
1453
+ _query_params = []
1454
+ # process the header parameters
1455
+ _header_params = dict(_params.get('_headers', {}))
1456
+ # process the form parameters
1457
+ _form_params = []
1458
+ _files = {}
1459
+ # process the body parameter
1460
+ _body_params = None
1461
+ if _params['request_body'] is not None:
1462
+ _body_params = _params['request_body']
1463
+
1464
+ # set the HTTP header `Accept`
1465
+ _header_params['Accept'] = self.api_client.select_header_accept(
1466
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1467
+
1468
+ # set the HTTP header `Content-Type`
1469
+ _content_types_list = _params.get('_content_type',
1470
+ self.api_client.select_header_content_type(
1471
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1472
+ if _content_types_list:
1473
+ _header_params['Content-Type'] = _content_types_list
1474
+
1475
+ # authentication setting
1476
+ _auth_settings = ['oauth2'] # noqa: E501
1477
+
1478
+ _response_types_map = {
1479
+ '200': "UpsertStructuredDataResponse",
1480
+ '400': "LusidValidationProblemDetails",
1481
+ }
1482
+
1483
+ return self.api_client.call_api(
1484
+ '/api/unitresults/resultvalue/{scope}', 'POST',
1485
+ _path_params,
1486
+ _query_params,
1487
+ _header_params,
1488
+ body=_body_params,
1489
+ post_params=_form_params,
1490
+ files=_files,
1491
+ response_types_map=_response_types_map,
1492
+ auth_settings=_auth_settings,
1493
+ async_req=_params.get('async_req'),
1494
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1495
+ _preload_content=_params.get('_preload_content', True),
1496
+ _request_timeout=_params.get('_request_timeout'),
1497
+ opts=_params.get('opts'),
1498
+ collection_formats=_collection_formats,
1499
+ _request_auth=_params.get('_request_auth'))
1500
+
1501
+ @overload
1502
+ async def upsert_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data items.")], request_body : Annotated[Dict[str, UpsertStructuredResultDataRequest], Field(..., description="The set of data items to create or update, keyed by a unique, ephemeral correlation ID.")], **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
1503
+ ...
1504
+
1505
+ @overload
1506
+ def upsert_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data items.")], request_body : Annotated[Dict[str, UpsertStructuredResultDataRequest], Field(..., description="The set of data items to create or update, keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=True, **kwargs) -> UpsertStructuredDataResponse: # noqa: E501
1507
+ ...
1508
+
1509
+ @validate_arguments
1510
+ def upsert_structured_result_data(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data items.")], request_body : Annotated[Dict[str, UpsertStructuredResultDataRequest], Field(..., description="The set of data items to create or update, keyed by a unique, ephemeral correlation ID.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertStructuredDataResponse, Awaitable[UpsertStructuredDataResponse]]: # noqa: E501
1511
+ """UpsertStructuredResultData: Upsert structured result data # noqa: E501
1512
+
1513
+ Create or update one or more structured result data items in a particular scope. An item is updated if it already exists and created if it does not. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully created or updated data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
1514
+ This method makes a synchronous HTTP request by default. To make an
1515
+ asynchronous HTTP request, please pass async_req=True
1516
+
1517
+ >>> thread = api.upsert_structured_result_data(scope, request_body, async_req=True)
1518
+ >>> result = thread.get()
1519
+
1520
+ :param scope: The scope in which to create or update data items. (required)
1521
+ :type scope: str
1522
+ :param request_body: The set of data items to create or update, keyed by a unique, ephemeral correlation ID. (required)
1523
+ :type request_body: Dict[str, UpsertStructuredResultDataRequest]
1524
+ :param async_req: Whether to execute the request asynchronously.
1525
+ :type async_req: bool, optional
1526
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1527
+ :param opts: Configuration options for this request
1528
+ :type opts: ConfigurationOptions, optional
1529
+ :return: Returns the result object.
1530
+ If the method is called asynchronously,
1531
+ returns the request thread.
1532
+ :rtype: UpsertStructuredDataResponse
1533
+ """
1534
+ kwargs['_return_http_data_only'] = True
1535
+ if '_preload_content' in kwargs:
1536
+ message = "Error! Please call the upsert_structured_result_data_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1537
+ raise ValueError(message)
1538
+ if async_req is not None:
1539
+ kwargs['async_req'] = async_req
1540
+ return self.upsert_structured_result_data_with_http_info(scope, request_body, **kwargs) # noqa: E501
1541
+
1542
+ @validate_arguments
1543
+ def upsert_structured_result_data_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope in which to create or update data items.")], request_body : Annotated[Dict[str, UpsertStructuredResultDataRequest], Field(..., description="The set of data items to create or update, keyed by a unique, ephemeral correlation ID.")], **kwargs) -> ApiResponse: # noqa: E501
1544
+ """UpsertStructuredResultData: Upsert structured result data # noqa: E501
1545
+
1546
+ Create or update one or more structured result data items in a particular scope. An item is updated if it already exists and created if it does not. In the request, each data item must be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each data item in the response. The response returns both the collection of successfully created or updated data items, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for any unsuccessful results. # noqa: E501
1547
+ This method makes a synchronous HTTP request by default. To make an
1548
+ asynchronous HTTP request, please pass async_req=True
1549
+
1550
+ >>> thread = api.upsert_structured_result_data_with_http_info(scope, request_body, async_req=True)
1551
+ >>> result = thread.get()
1552
+
1553
+ :param scope: The scope in which to create or update data items. (required)
1554
+ :type scope: str
1555
+ :param request_body: The set of data items to create or update, keyed by a unique, ephemeral correlation ID. (required)
1556
+ :type request_body: Dict[str, UpsertStructuredResultDataRequest]
1557
+ :param async_req: Whether to execute the request asynchronously.
1558
+ :type async_req: bool, optional
1559
+ :param _preload_content: if False, the ApiResponse.data will
1560
+ be set to none and raw_data will store the
1561
+ HTTP response body without reading/decoding.
1562
+ Default is True.
1563
+ :type _preload_content: bool, optional
1564
+ :param _return_http_data_only: response data instead of ApiResponse
1565
+ object with status code, headers, etc
1566
+ :type _return_http_data_only: bool, optional
1567
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1568
+ :param opts: Configuration options for this request
1569
+ :type opts: ConfigurationOptions, optional
1570
+ :param _request_auth: set to override the auth_settings for an a single
1571
+ request; this effectively ignores the authentication
1572
+ in the spec for a single request.
1573
+ :type _request_auth: dict, optional
1574
+ :type _content_type: string, optional: force content-type for the request
1575
+ :return: Returns the result object.
1576
+ If the method is called asynchronously,
1577
+ returns the request thread.
1578
+ :rtype: tuple(UpsertStructuredDataResponse, status_code(int), headers(HTTPHeaderDict))
1579
+ """
1580
+
1581
+ _params = locals()
1582
+
1583
+ _all_params = [
1584
+ 'scope',
1585
+ 'request_body'
1586
+ ]
1587
+ _all_params.extend(
1588
+ [
1589
+ 'async_req',
1590
+ '_return_http_data_only',
1591
+ '_preload_content',
1592
+ '_request_timeout',
1593
+ '_request_auth',
1594
+ '_content_type',
1595
+ '_headers',
1596
+ 'opts'
1597
+ ]
1598
+ )
1599
+
1600
+ # validate the arguments
1601
+ for _key, _val in _params['kwargs'].items():
1602
+ if _key not in _all_params:
1603
+ raise ApiTypeError(
1604
+ "Got an unexpected keyword argument '%s'"
1605
+ " to method upsert_structured_result_data" % _key
1606
+ )
1607
+ _params[_key] = _val
1608
+ del _params['kwargs']
1609
+
1610
+ _collection_formats = {}
1611
+
1612
+ # process the path parameters
1613
+ _path_params = {}
1614
+ if _params['scope']:
1615
+ _path_params['scope'] = _params['scope']
1616
+
1617
+
1618
+ # process the query parameters
1619
+ _query_params = []
1620
+ # process the header parameters
1621
+ _header_params = dict(_params.get('_headers', {}))
1622
+ # process the form parameters
1623
+ _form_params = []
1624
+ _files = {}
1625
+ # process the body parameter
1626
+ _body_params = None
1627
+ if _params['request_body'] is not None:
1628
+ _body_params = _params['request_body']
1629
+
1630
+ # set the HTTP header `Accept`
1631
+ _header_params['Accept'] = self.api_client.select_header_accept(
1632
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1633
+
1634
+ # set the HTTP header `Content-Type`
1635
+ _content_types_list = _params.get('_content_type',
1636
+ self.api_client.select_header_content_type(
1637
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1638
+ if _content_types_list:
1639
+ _header_params['Content-Type'] = _content_types_list
1640
+
1641
+ # authentication setting
1642
+ _auth_settings = ['oauth2'] # noqa: E501
1643
+
1644
+ _response_types_map = {
1645
+ '200': "UpsertStructuredDataResponse",
1646
+ '400': "LusidValidationProblemDetails",
1647
+ }
1648
+
1649
+ return self.api_client.call_api(
1650
+ '/api/unitresults/{scope}', 'POST',
1651
+ _path_params,
1652
+ _query_params,
1653
+ _header_params,
1654
+ body=_body_params,
1655
+ post_params=_form_params,
1656
+ files=_files,
1657
+ response_types_map=_response_types_map,
1658
+ auth_settings=_auth_settings,
1659
+ async_req=_params.get('async_req'),
1660
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1661
+ _preload_content=_params.get('_preload_content', True),
1662
+ _request_timeout=_params.get('_request_timeout'),
1663
+ opts=_params.get('opts'),
1664
+ collection_formats=_collection_formats,
1665
+ _request_auth=_params.get('_request_auth'))