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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of lusid-sdk might be problematic. Click here for more details.

Files changed (332) hide show
  1. lusid/__init__.py +1117 -14
  2. lusid/api/__init__.py +69 -0
  3. lusid/api/abor_api.py +513 -179
  4. lusid/api/abor_configuration_api.py +25 -24
  5. lusid/api/allocations_api.py +12 -20
  6. lusid/api/blocks_api.py +6 -6
  7. lusid/api/calendars_api.py +16 -24
  8. lusid/api/chart_of_accounts_api.py +1745 -441
  9. lusid/api/compliance_api.py +71 -62
  10. lusid/api/configuration_recipe_api.py +1198 -56
  11. lusid/api/corporate_action_sources_api.py +8 -8
  12. lusid/api/custom_entities_api.py +6 -6
  13. lusid/api/cut_label_definitions_api.py +9 -17
  14. lusid/api/data_types_api.py +16 -32
  15. lusid/api/executions_api.py +6 -6
  16. lusid/api/funds_api.py +1119 -0
  17. lusid/api/instrument_event_types_api.py +1287 -0
  18. lusid/api/instruments_api.py +12 -20
  19. lusid/api/legacy_compliance_api.py +12 -12
  20. lusid/api/legal_entities_api.py +12 -12
  21. lusid/api/order_graph_api.py +12 -12
  22. lusid/api/order_instructions_api.py +6 -6
  23. lusid/api/order_management_api.py +495 -14
  24. lusid/api/orders_api.py +16 -24
  25. lusid/api/packages_api.py +6 -6
  26. lusid/api/persons_api.py +16 -24
  27. lusid/api/placements_api.py +12 -12
  28. lusid/api/portfolio_groups_api.py +6 -6
  29. lusid/api/portfolios_api.py +23 -39
  30. lusid/api/property_definitions_api.py +205 -0
  31. lusid/api/queryable_keys_api.py +211 -0
  32. lusid/api/quotes_api.py +20 -36
  33. lusid/api/reconciliations_api.py +410 -1978
  34. lusid/api/schemas_api.py +7 -15
  35. lusid/api/scopes_api.py +151 -0
  36. lusid/api/scripted_translation_api.py +30 -28
  37. lusid/api/staging_rule_set_api.py +885 -0
  38. lusid/api/transaction_configuration_api.py +22 -22
  39. lusid/api/transaction_portfolios_api.py +282 -577
  40. lusid/api_client.py +5 -3
  41. lusid/configuration.py +1 -1
  42. lusid/extensions/__init__.py +10 -7
  43. lusid/extensions/api_client.py +3 -1
  44. lusid/extensions/api_client_factory.py +156 -45
  45. lusid/extensions/api_configuration.py +124 -15
  46. lusid/extensions/configuration_loaders.py +2 -4
  47. lusid/extensions/proxy_config.py +8 -5
  48. lusid/extensions/socket_keep_alive.py +14 -15
  49. lusid/extensions/tcp_keep_alive_connector.py +93 -46
  50. lusid/models/__init__.py +1028 -13
  51. lusid/models/abor.py +9 -2
  52. lusid/models/abor_configuration.py +8 -8
  53. lusid/models/abor_configuration_request.py +9 -9
  54. lusid/models/abor_request.py +1 -1
  55. lusid/models/account.py +6 -1
  56. lusid/models/accumulation_event.py +104 -0
  57. lusid/models/address_key_compliance_parameter.py +5 -12
  58. lusid/models/address_key_list_compliance_parameter.py +3 -3
  59. lusid/models/address_key_option_definition.py +3 -1
  60. lusid/models/amortisation_event.py +4 -6
  61. lusid/models/{underlying_leg.py → asset_leg.py} +15 -15
  62. lusid/models/basket.py +3 -3
  63. lusid/models/block_and_order_id_request.py +78 -0
  64. lusid/models/block_and_orders.py +83 -0
  65. lusid/models/block_and_orders_create_request.py +77 -0
  66. lusid/models/block_and_orders_request.py +134 -0
  67. lusid/models/blocked_order_request.py +130 -0
  68. lusid/models/bond.py +13 -6
  69. lusid/models/bond_coupon_event.py +97 -0
  70. lusid/models/bond_default_event.py +8 -18
  71. lusid/models/bond_principal_event.py +97 -0
  72. lusid/models/book_transactions_request.py +97 -0
  73. lusid/models/bool_compliance_parameter.py +3 -3
  74. lusid/models/bool_list_compliance_parameter.py +3 -3
  75. lusid/models/branch_step.py +101 -0
  76. lusid/models/cap_floor.py +3 -3
  77. lusid/models/cash_dividend_event.py +32 -10
  78. lusid/models/cash_election.py +91 -0
  79. lusid/models/cash_flow_event.py +5 -7
  80. lusid/models/cash_perpetual.py +3 -3
  81. lusid/models/cds_flow_conventions.py +1 -1
  82. lusid/models/cds_index.py +4 -4
  83. lusid/models/check_step.py +110 -0
  84. lusid/models/cleardown_module_details.py +95 -0
  85. lusid/models/cleardown_module_request.py +117 -0
  86. lusid/models/cleardown_module_response.py +139 -0
  87. lusid/models/cleardown_module_rule.py +94 -0
  88. lusid/models/{reconciliation_run_break.py → cleardown_module_rules_updated_response.py} +30 -36
  89. lusid/models/close_event.py +3 -3
  90. lusid/models/close_period_diary_entry_request.py +149 -0
  91. lusid/models/complete_portfolio.py +8 -1
  92. lusid/models/complex_bond.py +4 -4
  93. lusid/models/complex_market_data.py +6 -5
  94. lusid/models/compliance_parameter.py +8 -5
  95. lusid/models/compliance_parameter_type.py +3 -0
  96. lusid/models/compliance_rule_breakdown.py +16 -8
  97. lusid/models/compliance_rule_breakdown_request.py +12 -4
  98. lusid/models/compliance_rule_result_v2.py +85 -0
  99. lusid/models/compliance_step.py +99 -0
  100. lusid/models/compliance_step_type.py +42 -0
  101. lusid/models/compliance_summary_rule_result.py +12 -15
  102. lusid/models/compliance_summary_rule_result_request.py +12 -15
  103. lusid/models/compliance_template_variation.py +12 -2
  104. lusid/models/component_transaction.py +92 -0
  105. lusid/models/composite_dispersion.py +30 -5
  106. lusid/models/compounding.py +4 -4
  107. lusid/models/configuration_recipe.py +10 -19
  108. lusid/models/constant_volatility_surface.py +102 -0
  109. lusid/models/contract_for_difference.py +3 -3
  110. lusid/models/create_derived_property_definition_request.py +3 -3
  111. lusid/models/create_derived_transaction_portfolio_request.py +10 -3
  112. lusid/models/create_property_definition_request.py +12 -5
  113. lusid/models/create_staging_rule_set_request.py +91 -0
  114. lusid/models/create_trade_tickets_response.py +87 -0
  115. lusid/models/create_transaction_portfolio_request.py +16 -3
  116. lusid/models/credit_default_swap.py +4 -4
  117. lusid/models/credit_spread_curve_data.py +4 -4
  118. lusid/models/custom_entity_definition.py +8 -2
  119. lusid/models/custom_entity_type.py +8 -2
  120. lusid/models/cut_label_definition.py +7 -1
  121. lusid/models/data_type.py +7 -1
  122. lusid/models/data_type_summary.py +8 -2
  123. lusid/models/date_time_compliance_parameter.py +3 -3
  124. lusid/models/date_time_list_compliance_parameter.py +3 -3
  125. lusid/models/{upsert_reconciliation_run_request.py → day_month.py} +15 -15
  126. lusid/models/decimal_compliance_parameter.py +3 -3
  127. lusid/models/decimal_list_compliance_parameter.py +3 -3
  128. lusid/models/dialect.py +9 -3
  129. lusid/models/diary_entry.py +1 -1
  130. lusid/models/diary_entry_request.py +1 -1
  131. lusid/models/discount_factor_curve_data.py +3 -3
  132. lusid/models/dividend_option_event.py +129 -0
  133. lusid/models/dividend_reinvestment_event.py +124 -0
  134. lusid/models/election_specification.py +73 -0
  135. lusid/models/eligibility_calculation.py +71 -0
  136. lusid/models/empty_model_options.py +3 -3
  137. lusid/models/equity.py +8 -6
  138. lusid/models/equity_curve_by_prices_data.py +3 -3
  139. lusid/models/equity_model_options.py +3 -3
  140. lusid/models/equity_option.py +3 -3
  141. lusid/models/equity_swap.py +4 -4
  142. lusid/models/equity_vol_surface_data.py +3 -3
  143. lusid/models/exchange_traded_option.py +3 -3
  144. lusid/models/exercise_event.py +5 -7
  145. lusid/models/exotic_instrument.py +3 -3
  146. lusid/models/expiry_event.py +91 -0
  147. lusid/models/filter_predicate_compliance_parameter.py +91 -0
  148. lusid/models/filter_step.py +101 -0
  149. lusid/models/fixed_leg.py +3 -3
  150. lusid/models/fixed_schedule.py +4 -9
  151. lusid/models/flexible_loan.py +105 -0
  152. lusid/models/float_schedule.py +20 -12
  153. lusid/models/floating_leg.py +3 -3
  154. lusid/models/flow_convention_name.py +1 -1
  155. lusid/models/flow_conventions.py +1 -1
  156. lusid/models/forward_rate_agreement.py +3 -3
  157. lusid/models/from_recipe.py +81 -0
  158. lusid/models/fund.py +182 -0
  159. lusid/models/fund_properties.py +115 -0
  160. lusid/models/fund_request.py +165 -0
  161. lusid/models/fund_share_class.py +99 -0
  162. lusid/models/funding_leg.py +3 -3
  163. lusid/models/funding_leg_options.py +3 -3
  164. lusid/models/future.py +3 -3
  165. lusid/models/fx_conventions.py +73 -0
  166. lusid/models/fx_forward.py +8 -6
  167. lusid/models/fx_forward_curve_by_quote_reference.py +4 -4
  168. lusid/models/fx_forward_curve_data.py +3 -3
  169. lusid/models/fx_forward_model_options.py +3 -3
  170. lusid/models/fx_forward_pips_curve_data.py +3 -3
  171. lusid/models/fx_forward_settlement_event.py +136 -0
  172. lusid/models/fx_forward_tenor_curve_data.py +4 -4
  173. lusid/models/fx_forward_tenor_pips_curve_data.py +4 -4
  174. lusid/models/fx_linked_notional_schedule.py +108 -0
  175. lusid/models/fx_option.py +3 -3
  176. lusid/models/fx_rate_schedule.py +3 -3
  177. lusid/models/fx_swap.py +4 -4
  178. lusid/models/fx_vol_surface_data.py +3 -3
  179. lusid/models/{reconciliation_run.py → get_recipe_composer_response.py} +15 -15
  180. lusid/models/group_by_selector_compliance_parameter.py +91 -0
  181. lusid/models/group_by_step.py +101 -0
  182. lusid/models/group_filter_predicate_compliance_parameter.py +91 -0
  183. lusid/models/group_filter_step.py +110 -0
  184. lusid/models/group_of_market_data_key_rules.py +79 -0
  185. lusid/models/index_convention.py +1 -1
  186. lusid/models/index_model_options.py +3 -3
  187. lusid/models/inflation_index_conventions.py +2 -2
  188. lusid/models/inflation_leg.py +3 -3
  189. lusid/models/inflation_linked_bond.py +3 -3
  190. lusid/models/inflation_swap.py +4 -4
  191. lusid/models/informational_error_event.py +3 -3
  192. lusid/models/informational_event.py +4 -6
  193. lusid/models/instrument_event.py +13 -5
  194. lusid/models/instrument_event_configuration.py +74 -0
  195. lusid/models/instrument_event_holder.py +12 -3
  196. lusid/models/instrument_event_type.py +8 -0
  197. lusid/models/instrument_leg.py +3 -3
  198. lusid/models/instrument_list_compliance_parameter.py +3 -3
  199. lusid/models/instrument_payment_diary_leg.py +5 -3
  200. lusid/models/instrument_resolution_detail.py +105 -0
  201. lusid/models/instrument_type.py +2 -0
  202. lusid/models/interest_rate_swap.py +4 -4
  203. lusid/models/interest_rate_swaption.py +3 -3
  204. lusid/models/intermediate_compliance_step.py +110 -0
  205. lusid/models/ir_vol_cube_data.py +3 -3
  206. lusid/models/journal_entry_line.py +34 -3
  207. lusid/models/journal_entry_lines_query_parameters.py +1 -1
  208. lusid/models/label_value_set.py +1 -1
  209. lusid/models/leg_definition.py +16 -3
  210. lusid/models/lineage_member.py +87 -0
  211. lusid/models/lock_period_diary_entry_request.py +91 -0
  212. lusid/models/lusid_instrument.py +7 -5
  213. lusid/models/lusid_trade_ticket.py +8 -1
  214. lusid/models/market_context.py +17 -2
  215. lusid/models/market_data_type.py +1 -0
  216. lusid/models/maturity_event.py +91 -0
  217. lusid/models/model_options.py +5 -6
  218. lusid/models/model_options_type.py +0 -1
  219. lusid/models/model_selection.py +3 -3
  220. lusid/models/move_orders_to_different_blocks_request.py +77 -0
  221. lusid/models/moved_order_to_different_block_response.py +85 -0
  222. lusid/models/movement_type.py +2 -0
  223. lusid/models/multi_currency_amounts.py +71 -0
  224. lusid/models/opaque_market_data.py +3 -3
  225. lusid/models/opaque_model_options.py +3 -3
  226. lusid/models/open_event.py +3 -3
  227. lusid/models/optionality_schedule.py +3 -3
  228. lusid/models/order_graph_block.py +4 -2
  229. lusid/models/order_graph_block_order_detail.py +16 -2
  230. lusid/models/output_transaction.py +9 -2
  231. lusid/models/paged_resource_list_of_cleardown_module_response.py +113 -0
  232. lusid/models/{paged_resource_list_of_reconciliation_run_break.py → paged_resource_list_of_cleardown_module_rule.py} +11 -11
  233. lusid/models/{paged_resource_list_of_reconciliation_run.py → paged_resource_list_of_fund.py} +11 -11
  234. lusid/models/paged_resource_list_of_property_definition.py +113 -0
  235. lusid/models/paged_resource_list_of_staging_rule_set.py +113 -0
  236. lusid/models/paged_resource_list_of_transaction_template.py +113 -0
  237. lusid/models/paged_resource_list_of_transaction_template_specification.py +113 -0
  238. lusid/models/participation_request.py +3 -9
  239. lusid/models/performance_returns_metric.py +1 -1
  240. lusid/models/period_diary_entries_reopened_response.py +104 -0
  241. lusid/models/place_blocks_request.py +77 -0
  242. lusid/models/portfolio.py +15 -2
  243. lusid/models/portfolio_details.py +15 -2
  244. lusid/models/portfolio_group_id_compliance_parameter.py +3 -3
  245. lusid/models/portfolio_group_id_list_compliance_parameter.py +3 -3
  246. lusid/models/portfolio_holding.py +27 -2
  247. lusid/models/portfolio_id_compliance_parameter.py +3 -3
  248. lusid/models/portfolio_id_list_compliance_parameter.py +3 -3
  249. lusid/models/posting_module_rule.py +29 -4
  250. lusid/models/pricing_model.py +2 -1
  251. lusid/models/property_definition.py +17 -4
  252. lusid/models/property_definition_search_result.py +3 -3
  253. lusid/models/property_domain.py +3 -0
  254. lusid/models/property_key_compliance_parameter.py +3 -3
  255. lusid/models/property_key_list_compliance_parameter.py +3 -3
  256. lusid/models/queryable_key.py +124 -0
  257. lusid/models/raw_vendor_event.py +5 -7
  258. lusid/models/re_open_period_diary_entry_request.py +84 -0
  259. lusid/models/recipe_block.py +87 -0
  260. lusid/models/recipe_composer.py +100 -0
  261. lusid/models/{reconciliation_break_id.py → recipe_value.py} +22 -23
  262. lusid/models/recombine_step.py +101 -0
  263. lusid/models/reference_instrument.py +3 -3
  264. lusid/models/relative_date_offset.py +71 -0
  265. lusid/models/repo.py +3 -3
  266. lusid/models/reset_event.py +4 -6
  267. lusid/models/resource_list_of_block_and_orders.py +113 -0
  268. lusid/models/resource_list_of_get_recipe_composer_response.py +113 -0
  269. lusid/models/resource_list_of_moved_order_to_different_block_response.py +113 -0
  270. lusid/models/resource_list_of_queryable_key.py +113 -0
  271. lusid/models/schedule.py +6 -5
  272. lusid/models/schedule_type.py +1 -0
  273. lusid/models/script_map_reference.py +94 -0
  274. lusid/models/security_election.py +86 -0
  275. lusid/models/set_share_class_instruments_request.py +79 -0
  276. lusid/models/side_definition.py +1 -8
  277. lusid/models/sides_definition_request.py +1 -8
  278. lusid/models/simple_cash_flow_loan.py +3 -3
  279. lusid/models/simple_instrument.py +3 -3
  280. lusid/models/staging_rule.py +90 -0
  281. lusid/models/staging_rule_approval_criteria.py +81 -0
  282. lusid/models/staging_rule_match_criteria.py +95 -0
  283. lusid/models/staging_rule_set.py +103 -0
  284. lusid/models/step_schedule.py +3 -3
  285. lusid/models/stock_split_event.py +3 -3
  286. lusid/models/string_compliance_parameter.py +3 -3
  287. lusid/models/string_list_compliance_parameter.py +3 -3
  288. lusid/models/template_field.py +77 -0
  289. lusid/models/term_deposit.py +3 -3
  290. lusid/models/total_return_swap.py +16 -16
  291. lusid/models/transaction_configuration_movement_data.py +3 -3
  292. lusid/models/transaction_configuration_movement_data_request.py +3 -3
  293. lusid/models/transaction_currency_and_amount.py +81 -0
  294. lusid/models/transaction_field_map.py +97 -0
  295. lusid/models/transaction_price.py +3 -3
  296. lusid/models/transaction_price_and_type.py +81 -0
  297. lusid/models/transaction_price_type.py +1 -0
  298. lusid/models/transaction_property_map.py +80 -0
  299. lusid/models/transaction_template.py +100 -0
  300. lusid/models/transaction_template_request.py +79 -0
  301. lusid/models/transaction_template_specification.py +99 -0
  302. lusid/models/transaction_type_alias.py +0 -7
  303. lusid/models/transaction_type_calculation.py +1 -1
  304. lusid/models/transition_event.py +3 -3
  305. lusid/models/translation_context.py +75 -0
  306. lusid/models/translation_script.py +9 -3
  307. lusid/models/trial_balance.py +46 -11
  308. lusid/models/trial_balance_query_parameters.py +15 -6
  309. lusid/models/trigger_event.py +3 -3
  310. lusid/models/units_ratio.py +71 -0
  311. lusid/models/update_staging_rule_set_request.py +91 -0
  312. lusid/models/{compliance_run_summary.py → upsert_compliance_run_summary_result.py} +8 -8
  313. lusid/models/upsert_dialect_request.py +79 -0
  314. lusid/models/upsert_instrument_event_request.py +12 -3
  315. lusid/models/upsert_quote_request.py +1 -1
  316. lusid/models/upsert_recipe_composer_request.py +73 -0
  317. lusid/models/upsert_recipe_request.py +3 -9
  318. lusid/models/upsert_translation_script_request.py +75 -0
  319. lusid/models/valuation_schedule.py +10 -3
  320. lusid/models/weighted_instrument.py +13 -2
  321. lusid/models/weighted_instrument_in_line_lookup_identifiers.py +89 -0
  322. lusid/models/yield_curve_data.py +3 -3
  323. lusid/rest.py +1 -1
  324. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.0.470.dist-info}/METADATA +245 -48
  325. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.0.470.dist-info}/RECORD +326 -235
  326. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.0.470.dist-info}/WHEEL +1 -1
  327. lusid/extensions/api_client_builder.py +0 -138
  328. lusid/models/configuration_recipe_snippet.py +0 -139
  329. lusid/models/je_lines_query_parameters.py +0 -105
  330. lusid/models/look_up_pricing_model_options.py +0 -93
  331. lusid/models/reconciliation_run_id.py +0 -85
  332. lusid/models/upsert_reconciliation_break_request.py +0 -98
@@ -25,8 +25,15 @@ from pydantic import Field, StrictBool, conlist, constr, validator
25
25
  from typing import Optional
26
26
 
27
27
  from lusid.models.allocation_service_run_response import AllocationServiceRunResponse
28
+ from lusid.models.block_and_orders_create_request import BlockAndOrdersCreateRequest
29
+ from lusid.models.book_transactions_request import BookTransactionsRequest
28
30
  from lusid.models.book_transactions_response import BookTransactionsResponse
31
+ from lusid.models.move_orders_to_different_blocks_request import MoveOrdersToDifferentBlocksRequest
32
+ from lusid.models.place_blocks_request import PlaceBlocksRequest
29
33
  from lusid.models.resource_id import ResourceId
34
+ from lusid.models.resource_list_of_block_and_orders import ResourceListOfBlockAndOrders
35
+ from lusid.models.resource_list_of_moved_order_to_different_block_response import ResourceListOfMovedOrderToDifferentBlockResponse
36
+ from lusid.models.resource_list_of_placement import ResourceListOfPlacement
30
37
 
31
38
  from lusid.api_client import ApiClient
32
39
  from lusid.api_response import ApiResponse
@@ -49,26 +56,26 @@ class OrderManagementApi:
49
56
  self.api_client = api_client
50
57
 
51
58
  @overload
52
- async def book_transactions(self, resource_id : Annotated[conlist(ResourceId, max_items=5000), Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, **kwargs) -> BookTransactionsResponse: # noqa: E501
59
+ async def book_transactions(self, book_transactions_request : Annotated[BookTransactionsRequest, Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, **kwargs) -> BookTransactionsResponse: # noqa: E501
53
60
  ...
54
61
 
55
62
  @overload
56
- def book_transactions(self, resource_id : Annotated[conlist(ResourceId, max_items=5000), Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, async_req: Optional[bool]=True, **kwargs) -> BookTransactionsResponse: # noqa: E501
63
+ def book_transactions(self, book_transactions_request : Annotated[BookTransactionsRequest, Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, async_req: Optional[bool]=True, **kwargs) -> BookTransactionsResponse: # noqa: E501
57
64
  ...
58
65
 
59
66
  @validate_arguments
60
- def book_transactions(self, resource_id : Annotated[conlist(ResourceId, max_items=5000), Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BookTransactionsResponse, Awaitable[BookTransactionsResponse]]: # noqa: E501
67
+ def book_transactions(self, book_transactions_request : Annotated[BookTransactionsRequest, Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BookTransactionsResponse, Awaitable[BookTransactionsResponse]]: # noqa: E501
61
68
  """[EXPERIMENTAL] BookTransactions: Books transactions using specific allocations as a source. # noqa: E501
62
69
 
63
70
  Takes a collection of allocation IDs, and maps fields from those allocations and related orders onto new transactions. # noqa: E501
64
71
  This method makes a synchronous HTTP request by default. To make an
65
72
  asynchronous HTTP request, please pass async_req=True
66
73
 
67
- >>> thread = api.book_transactions(resource_id, apply_fees_and_commission, async_req=True)
74
+ >>> thread = api.book_transactions(book_transactions_request, apply_fees_and_commission, async_req=True)
68
75
  >>> result = thread.get()
69
76
 
70
- :param resource_id: The allocations to create transactions for (required)
71
- :type resource_id: List[ResourceId]
77
+ :param book_transactions_request: The allocations to create transactions for (required)
78
+ :type book_transactions_request: BookTransactionsRequest
72
79
  :param apply_fees_and_commission: Whether to apply fees and commissions to transactions (default: true)
73
80
  :type apply_fees_and_commission: bool
74
81
  :param async_req: Whether to execute the request asynchronously.
@@ -88,21 +95,21 @@ class OrderManagementApi:
88
95
  raise ValueError(message)
89
96
  if async_req is not None:
90
97
  kwargs['async_req'] = async_req
91
- return self.book_transactions_with_http_info(resource_id, apply_fees_and_commission, **kwargs) # noqa: E501
98
+ return self.book_transactions_with_http_info(book_transactions_request, apply_fees_and_commission, **kwargs) # noqa: E501
92
99
 
93
100
  @validate_arguments
94
- def book_transactions_with_http_info(self, resource_id : Annotated[conlist(ResourceId, max_items=5000), Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, **kwargs) -> ApiResponse: # noqa: E501
101
+ def book_transactions_with_http_info(self, book_transactions_request : Annotated[BookTransactionsRequest, Field(..., description="The allocations to create transactions for")], apply_fees_and_commission : Annotated[Optional[StrictBool], Field(description="Whether to apply fees and commissions to transactions (default: true)")] = None, **kwargs) -> ApiResponse: # noqa: E501
95
102
  """[EXPERIMENTAL] BookTransactions: Books transactions using specific allocations as a source. # noqa: E501
96
103
 
97
104
  Takes a collection of allocation IDs, and maps fields from those allocations and related orders onto new transactions. # noqa: E501
98
105
  This method makes a synchronous HTTP request by default. To make an
99
106
  asynchronous HTTP request, please pass async_req=True
100
107
 
101
- >>> thread = api.book_transactions_with_http_info(resource_id, apply_fees_and_commission, async_req=True)
108
+ >>> thread = api.book_transactions_with_http_info(book_transactions_request, apply_fees_and_commission, async_req=True)
102
109
  >>> result = thread.get()
103
110
 
104
- :param resource_id: The allocations to create transactions for (required)
105
- :type resource_id: List[ResourceId]
111
+ :param book_transactions_request: The allocations to create transactions for (required)
112
+ :type book_transactions_request: BookTransactionsRequest
106
113
  :param apply_fees_and_commission: Whether to apply fees and commissions to transactions (default: true)
107
114
  :type apply_fees_and_commission: bool
108
115
  :param async_req: Whether to execute the request asynchronously.
@@ -133,7 +140,7 @@ class OrderManagementApi:
133
140
  _params = locals()
134
141
 
135
142
  _all_params = [
136
- 'resource_id',
143
+ 'book_transactions_request',
137
144
  'apply_fees_and_commission'
138
145
  ]
139
146
  _all_params.extend(
@@ -175,8 +182,8 @@ class OrderManagementApi:
175
182
  _files = {}
176
183
  # process the body parameter
177
184
  _body_params = None
178
- if _params['resource_id'] is not None:
179
- _body_params = _params['resource_id']
185
+ if _params['book_transactions_request'] is not None:
186
+ _body_params = _params['book_transactions_request']
180
187
 
181
188
  # set the HTTP header `Accept`
182
189
  _header_params['Accept'] = self.api_client.select_header_accept(
@@ -214,6 +221,480 @@ class OrderManagementApi:
214
221
  collection_formats=_collection_formats,
215
222
  _request_auth=_params.get('_request_auth'))
216
223
 
224
+ @overload
225
+ async def create_orders(self, block_and_orders_create_request : Annotated[BlockAndOrdersCreateRequest, Field(..., description="The collection of block and orders requests.")], **kwargs) -> ResourceListOfBlockAndOrders: # noqa: E501
226
+ ...
227
+
228
+ @overload
229
+ def create_orders(self, block_and_orders_create_request : Annotated[BlockAndOrdersCreateRequest, Field(..., description="The collection of block and orders requests.")], async_req: Optional[bool]=True, **kwargs) -> ResourceListOfBlockAndOrders: # noqa: E501
230
+ ...
231
+
232
+ @validate_arguments
233
+ def create_orders(self, block_and_orders_create_request : Annotated[BlockAndOrdersCreateRequest, Field(..., description="The collection of block and orders requests.")], async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfBlockAndOrders, Awaitable[ResourceListOfBlockAndOrders]]: # noqa: E501
234
+ """[EARLY ACCESS] CreateOrders: Upsert a Block and associated orders # noqa: E501
235
+
236
+ Upsert a Block and create associated orders. This will fail if the block exists and already references orders with differing fields to the upsert request. # noqa: E501
237
+ This method makes a synchronous HTTP request by default. To make an
238
+ asynchronous HTTP request, please pass async_req=True
239
+
240
+ >>> thread = api.create_orders(block_and_orders_create_request, async_req=True)
241
+ >>> result = thread.get()
242
+
243
+ :param block_and_orders_create_request: The collection of block and orders requests. (required)
244
+ :type block_and_orders_create_request: BlockAndOrdersCreateRequest
245
+ :param async_req: Whether to execute the request asynchronously.
246
+ :type async_req: bool, optional
247
+ :param _request_timeout: timeout setting for this request.
248
+ If one number provided, it will be total request
249
+ timeout. It can also be a pair (tuple) of
250
+ (connection, read) timeouts.
251
+ :return: Returns the result object.
252
+ If the method is called asynchronously,
253
+ returns the request thread.
254
+ :rtype: ResourceListOfBlockAndOrders
255
+ """
256
+ kwargs['_return_http_data_only'] = True
257
+ if '_preload_content' in kwargs:
258
+ message = "Error! Please call the create_orders_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
259
+ raise ValueError(message)
260
+ if async_req is not None:
261
+ kwargs['async_req'] = async_req
262
+ return self.create_orders_with_http_info(block_and_orders_create_request, **kwargs) # noqa: E501
263
+
264
+ @validate_arguments
265
+ def create_orders_with_http_info(self, block_and_orders_create_request : Annotated[BlockAndOrdersCreateRequest, Field(..., description="The collection of block and orders requests.")], **kwargs) -> ApiResponse: # noqa: E501
266
+ """[EARLY ACCESS] CreateOrders: Upsert a Block and associated orders # noqa: E501
267
+
268
+ Upsert a Block and create associated orders. This will fail if the block exists and already references orders with differing fields to the upsert request. # noqa: E501
269
+ This method makes a synchronous HTTP request by default. To make an
270
+ asynchronous HTTP request, please pass async_req=True
271
+
272
+ >>> thread = api.create_orders_with_http_info(block_and_orders_create_request, async_req=True)
273
+ >>> result = thread.get()
274
+
275
+ :param block_and_orders_create_request: The collection of block and orders requests. (required)
276
+ :type block_and_orders_create_request: BlockAndOrdersCreateRequest
277
+ :param async_req: Whether to execute the request asynchronously.
278
+ :type async_req: bool, optional
279
+ :param _preload_content: if False, the ApiResponse.data will
280
+ be set to none and raw_data will store the
281
+ HTTP response body without reading/decoding.
282
+ Default is True.
283
+ :type _preload_content: bool, optional
284
+ :param _return_http_data_only: response data instead of ApiResponse
285
+ object with status code, headers, etc
286
+ :type _return_http_data_only: bool, optional
287
+ :param _request_timeout: timeout setting for this request. If one
288
+ number provided, it will be total request
289
+ timeout. It can also be a pair (tuple) of
290
+ (connection, read) timeouts.
291
+ :param _request_auth: set to override the auth_settings for an a single
292
+ request; this effectively ignores the authentication
293
+ in the spec for a single request.
294
+ :type _request_auth: dict, optional
295
+ :type _content_type: string, optional: force content-type for the request
296
+ :return: Returns the result object.
297
+ If the method is called asynchronously,
298
+ returns the request thread.
299
+ :rtype: tuple(ResourceListOfBlockAndOrders, status_code(int), headers(HTTPHeaderDict))
300
+ """
301
+
302
+ _params = locals()
303
+
304
+ _all_params = [
305
+ 'block_and_orders_create_request'
306
+ ]
307
+ _all_params.extend(
308
+ [
309
+ 'async_req',
310
+ '_return_http_data_only',
311
+ '_preload_content',
312
+ '_request_timeout',
313
+ '_request_auth',
314
+ '_content_type',
315
+ '_headers'
316
+ ]
317
+ )
318
+
319
+ # validate the arguments
320
+ for _key, _val in _params['kwargs'].items():
321
+ if _key not in _all_params:
322
+ raise ApiTypeError(
323
+ "Got an unexpected keyword argument '%s'"
324
+ " to method create_orders" % _key
325
+ )
326
+ _params[_key] = _val
327
+ del _params['kwargs']
328
+
329
+ _collection_formats = {}
330
+
331
+ # process the path parameters
332
+ _path_params = {}
333
+
334
+ # process the query parameters
335
+ _query_params = []
336
+ # process the header parameters
337
+ _header_params = dict(_params.get('_headers', {}))
338
+ # process the form parameters
339
+ _form_params = []
340
+ _files = {}
341
+ # process the body parameter
342
+ _body_params = None
343
+ if _params['block_and_orders_create_request'] is not None:
344
+ _body_params = _params['block_and_orders_create_request']
345
+
346
+ # set the HTTP header `Accept`
347
+ _header_params['Accept'] = self.api_client.select_header_accept(
348
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
349
+
350
+ # set the HTTP header `Content-Type`
351
+ _content_types_list = _params.get('_content_type',
352
+ self.api_client.select_header_content_type(
353
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
354
+ if _content_types_list:
355
+ _header_params['Content-Type'] = _content_types_list
356
+
357
+ # authentication setting
358
+ _auth_settings = ['oauth2'] # noqa: E501
359
+
360
+ _response_types_map = {
361
+ '201': "ResourceListOfBlockAndOrders",
362
+ '400': "LusidValidationProblemDetails",
363
+ }
364
+
365
+ return self.api_client.call_api(
366
+ '/api/ordermanagement/createorders', 'POST',
367
+ _path_params,
368
+ _query_params,
369
+ _header_params,
370
+ body=_body_params,
371
+ post_params=_form_params,
372
+ files=_files,
373
+ response_types_map=_response_types_map,
374
+ auth_settings=_auth_settings,
375
+ async_req=_params.get('async_req'),
376
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
377
+ _preload_content=_params.get('_preload_content', True),
378
+ _request_timeout=_params.get('_request_timeout'),
379
+ collection_formats=_collection_formats,
380
+ _request_auth=_params.get('_request_auth'))
381
+
382
+ @overload
383
+ async def move_orders(self, move_orders_to_different_blocks_request : Annotated[MoveOrdersToDifferentBlocksRequest, Field(..., description="The collection of order and destination block ids.")], **kwargs) -> ResourceListOfMovedOrderToDifferentBlockResponse: # noqa: E501
384
+ ...
385
+
386
+ @overload
387
+ def move_orders(self, move_orders_to_different_blocks_request : Annotated[MoveOrdersToDifferentBlocksRequest, Field(..., description="The collection of order and destination block ids.")], async_req: Optional[bool]=True, **kwargs) -> ResourceListOfMovedOrderToDifferentBlockResponse: # noqa: E501
388
+ ...
389
+
390
+ @validate_arguments
391
+ def move_orders(self, move_orders_to_different_blocks_request : Annotated[MoveOrdersToDifferentBlocksRequest, Field(..., description="The collection of order and destination block ids.")], async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfMovedOrderToDifferentBlockResponse, Awaitable[ResourceListOfMovedOrderToDifferentBlockResponse]]: # noqa: E501
392
+ """[EARLY ACCESS] MoveOrders: Move orders to new or existing block # noqa: E501
393
+
394
+ Move an order to a block, creating the block if it does not already exist. This will fail if the block exists and already references orders with differing fields to the upsert request. # noqa: E501
395
+ This method makes a synchronous HTTP request by default. To make an
396
+ asynchronous HTTP request, please pass async_req=True
397
+
398
+ >>> thread = api.move_orders(move_orders_to_different_blocks_request, async_req=True)
399
+ >>> result = thread.get()
400
+
401
+ :param move_orders_to_different_blocks_request: The collection of order and destination block ids. (required)
402
+ :type move_orders_to_different_blocks_request: MoveOrdersToDifferentBlocksRequest
403
+ :param async_req: Whether to execute the request asynchronously.
404
+ :type async_req: bool, optional
405
+ :param _request_timeout: timeout setting for this request.
406
+ If one number provided, it will be total request
407
+ timeout. It can also be a pair (tuple) of
408
+ (connection, read) timeouts.
409
+ :return: Returns the result object.
410
+ If the method is called asynchronously,
411
+ returns the request thread.
412
+ :rtype: ResourceListOfMovedOrderToDifferentBlockResponse
413
+ """
414
+ kwargs['_return_http_data_only'] = True
415
+ if '_preload_content' in kwargs:
416
+ message = "Error! Please call the move_orders_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
417
+ raise ValueError(message)
418
+ if async_req is not None:
419
+ kwargs['async_req'] = async_req
420
+ return self.move_orders_with_http_info(move_orders_to_different_blocks_request, **kwargs) # noqa: E501
421
+
422
+ @validate_arguments
423
+ def move_orders_with_http_info(self, move_orders_to_different_blocks_request : Annotated[MoveOrdersToDifferentBlocksRequest, Field(..., description="The collection of order and destination block ids.")], **kwargs) -> ApiResponse: # noqa: E501
424
+ """[EARLY ACCESS] MoveOrders: Move orders to new or existing block # noqa: E501
425
+
426
+ Move an order to a block, creating the block if it does not already exist. This will fail if the block exists and already references orders with differing fields to the upsert request. # noqa: E501
427
+ This method makes a synchronous HTTP request by default. To make an
428
+ asynchronous HTTP request, please pass async_req=True
429
+
430
+ >>> thread = api.move_orders_with_http_info(move_orders_to_different_blocks_request, async_req=True)
431
+ >>> result = thread.get()
432
+
433
+ :param move_orders_to_different_blocks_request: The collection of order and destination block ids. (required)
434
+ :type move_orders_to_different_blocks_request: MoveOrdersToDifferentBlocksRequest
435
+ :param async_req: Whether to execute the request asynchronously.
436
+ :type async_req: bool, optional
437
+ :param _preload_content: if False, the ApiResponse.data will
438
+ be set to none and raw_data will store the
439
+ HTTP response body without reading/decoding.
440
+ Default is True.
441
+ :type _preload_content: bool, optional
442
+ :param _return_http_data_only: response data instead of ApiResponse
443
+ object with status code, headers, etc
444
+ :type _return_http_data_only: bool, optional
445
+ :param _request_timeout: timeout setting for this request. If one
446
+ number provided, it will be total request
447
+ timeout. It can also be a pair (tuple) of
448
+ (connection, read) timeouts.
449
+ :param _request_auth: set to override the auth_settings for an a single
450
+ request; this effectively ignores the authentication
451
+ in the spec for a single request.
452
+ :type _request_auth: dict, optional
453
+ :type _content_type: string, optional: force content-type for the request
454
+ :return: Returns the result object.
455
+ If the method is called asynchronously,
456
+ returns the request thread.
457
+ :rtype: tuple(ResourceListOfMovedOrderToDifferentBlockResponse, status_code(int), headers(HTTPHeaderDict))
458
+ """
459
+
460
+ _params = locals()
461
+
462
+ _all_params = [
463
+ 'move_orders_to_different_blocks_request'
464
+ ]
465
+ _all_params.extend(
466
+ [
467
+ 'async_req',
468
+ '_return_http_data_only',
469
+ '_preload_content',
470
+ '_request_timeout',
471
+ '_request_auth',
472
+ '_content_type',
473
+ '_headers'
474
+ ]
475
+ )
476
+
477
+ # validate the arguments
478
+ for _key, _val in _params['kwargs'].items():
479
+ if _key not in _all_params:
480
+ raise ApiTypeError(
481
+ "Got an unexpected keyword argument '%s'"
482
+ " to method move_orders" % _key
483
+ )
484
+ _params[_key] = _val
485
+ del _params['kwargs']
486
+
487
+ _collection_formats = {}
488
+
489
+ # process the path parameters
490
+ _path_params = {}
491
+
492
+ # process the query parameters
493
+ _query_params = []
494
+ # process the header parameters
495
+ _header_params = dict(_params.get('_headers', {}))
496
+ # process the form parameters
497
+ _form_params = []
498
+ _files = {}
499
+ # process the body parameter
500
+ _body_params = None
501
+ if _params['move_orders_to_different_blocks_request'] is not None:
502
+ _body_params = _params['move_orders_to_different_blocks_request']
503
+
504
+ # set the HTTP header `Accept`
505
+ _header_params['Accept'] = self.api_client.select_header_accept(
506
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
507
+
508
+ # set the HTTP header `Content-Type`
509
+ _content_types_list = _params.get('_content_type',
510
+ self.api_client.select_header_content_type(
511
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
512
+ if _content_types_list:
513
+ _header_params['Content-Type'] = _content_types_list
514
+
515
+ # authentication setting
516
+ _auth_settings = ['oauth2'] # noqa: E501
517
+
518
+ _response_types_map = {
519
+ '200': "ResourceListOfMovedOrderToDifferentBlockResponse",
520
+ '400': "LusidValidationProblemDetails",
521
+ }
522
+
523
+ return self.api_client.call_api(
524
+ '/api/ordermanagement/moveorders', 'POST',
525
+ _path_params,
526
+ _query_params,
527
+ _header_params,
528
+ body=_body_params,
529
+ post_params=_form_params,
530
+ files=_files,
531
+ response_types_map=_response_types_map,
532
+ auth_settings=_auth_settings,
533
+ async_req=_params.get('async_req'),
534
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
535
+ _preload_content=_params.get('_preload_content', True),
536
+ _request_timeout=_params.get('_request_timeout'),
537
+ collection_formats=_collection_formats,
538
+ _request_auth=_params.get('_request_auth'))
539
+
540
+ @overload
541
+ async def place_blocks(self, place_blocks_request : Annotated[Optional[PlaceBlocksRequest], Field(description="The request containing the blocks to the placed.")] = None, **kwargs) -> ResourceListOfPlacement: # noqa: E501
542
+ ...
543
+
544
+ @overload
545
+ def place_blocks(self, place_blocks_request : Annotated[Optional[PlaceBlocksRequest], Field(description="The request containing the blocks to the placed.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfPlacement: # noqa: E501
546
+ ...
547
+
548
+ @validate_arguments
549
+ def place_blocks(self, place_blocks_request : Annotated[Optional[PlaceBlocksRequest], Field(description="The request containing the blocks to the placed.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPlacement, Awaitable[ResourceListOfPlacement]]: # noqa: E501
550
+ """[EARLY ACCESS] PlaceBlocks: Places blocks for a given list of placement requests. # noqa: E501
551
+
552
+ The referenced block's existence will be verified. # noqa: E501
553
+ This method makes a synchronous HTTP request by default. To make an
554
+ asynchronous HTTP request, please pass async_req=True
555
+
556
+ >>> thread = api.place_blocks(place_blocks_request, async_req=True)
557
+ >>> result = thread.get()
558
+
559
+ :param place_blocks_request: The request containing the blocks to the placed.
560
+ :type place_blocks_request: PlaceBlocksRequest
561
+ :param async_req: Whether to execute the request asynchronously.
562
+ :type async_req: bool, optional
563
+ :param _request_timeout: timeout setting for this request.
564
+ If one number provided, it will be total request
565
+ timeout. It can also be a pair (tuple) of
566
+ (connection, read) timeouts.
567
+ :return: Returns the result object.
568
+ If the method is called asynchronously,
569
+ returns the request thread.
570
+ :rtype: ResourceListOfPlacement
571
+ """
572
+ kwargs['_return_http_data_only'] = True
573
+ if '_preload_content' in kwargs:
574
+ message = "Error! Please call the place_blocks_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
575
+ raise ValueError(message)
576
+ if async_req is not None:
577
+ kwargs['async_req'] = async_req
578
+ return self.place_blocks_with_http_info(place_blocks_request, **kwargs) # noqa: E501
579
+
580
+ @validate_arguments
581
+ def place_blocks_with_http_info(self, place_blocks_request : Annotated[Optional[PlaceBlocksRequest], Field(description="The request containing the blocks to the placed.")] = None, **kwargs) -> ApiResponse: # noqa: E501
582
+ """[EARLY ACCESS] PlaceBlocks: Places blocks for a given list of placement requests. # noqa: E501
583
+
584
+ The referenced block's existence will be verified. # noqa: E501
585
+ This method makes a synchronous HTTP request by default. To make an
586
+ asynchronous HTTP request, please pass async_req=True
587
+
588
+ >>> thread = api.place_blocks_with_http_info(place_blocks_request, async_req=True)
589
+ >>> result = thread.get()
590
+
591
+ :param place_blocks_request: The request containing the blocks to the placed.
592
+ :type place_blocks_request: PlaceBlocksRequest
593
+ :param async_req: Whether to execute the request asynchronously.
594
+ :type async_req: bool, optional
595
+ :param _preload_content: if False, the ApiResponse.data will
596
+ be set to none and raw_data will store the
597
+ HTTP response body without reading/decoding.
598
+ Default is True.
599
+ :type _preload_content: bool, optional
600
+ :param _return_http_data_only: response data instead of ApiResponse
601
+ object with status code, headers, etc
602
+ :type _return_http_data_only: bool, optional
603
+ :param _request_timeout: timeout setting for this request. If one
604
+ number provided, it will be total request
605
+ timeout. It can also be a pair (tuple) of
606
+ (connection, read) timeouts.
607
+ :param _request_auth: set to override the auth_settings for an a single
608
+ request; this effectively ignores the authentication
609
+ in the spec for a single request.
610
+ :type _request_auth: dict, optional
611
+ :type _content_type: string, optional: force content-type for the request
612
+ :return: Returns the result object.
613
+ If the method is called asynchronously,
614
+ returns the request thread.
615
+ :rtype: tuple(ResourceListOfPlacement, status_code(int), headers(HTTPHeaderDict))
616
+ """
617
+
618
+ _params = locals()
619
+
620
+ _all_params = [
621
+ 'place_blocks_request'
622
+ ]
623
+ _all_params.extend(
624
+ [
625
+ 'async_req',
626
+ '_return_http_data_only',
627
+ '_preload_content',
628
+ '_request_timeout',
629
+ '_request_auth',
630
+ '_content_type',
631
+ '_headers'
632
+ ]
633
+ )
634
+
635
+ # validate the arguments
636
+ for _key, _val in _params['kwargs'].items():
637
+ if _key not in _all_params:
638
+ raise ApiTypeError(
639
+ "Got an unexpected keyword argument '%s'"
640
+ " to method place_blocks" % _key
641
+ )
642
+ _params[_key] = _val
643
+ del _params['kwargs']
644
+
645
+ _collection_formats = {}
646
+
647
+ # process the path parameters
648
+ _path_params = {}
649
+
650
+ # process the query parameters
651
+ _query_params = []
652
+ # process the header parameters
653
+ _header_params = dict(_params.get('_headers', {}))
654
+ # process the form parameters
655
+ _form_params = []
656
+ _files = {}
657
+ # process the body parameter
658
+ _body_params = None
659
+ if _params['place_blocks_request'] is not None:
660
+ _body_params = _params['place_blocks_request']
661
+
662
+ # set the HTTP header `Accept`
663
+ _header_params['Accept'] = self.api_client.select_header_accept(
664
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
665
+
666
+ # set the HTTP header `Content-Type`
667
+ _content_types_list = _params.get('_content_type',
668
+ self.api_client.select_header_content_type(
669
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
670
+ if _content_types_list:
671
+ _header_params['Content-Type'] = _content_types_list
672
+
673
+ # authentication setting
674
+ _auth_settings = ['oauth2'] # noqa: E501
675
+
676
+ _response_types_map = {
677
+ '200': "ResourceListOfPlacement",
678
+ '400': "LusidValidationProblemDetails",
679
+ }
680
+
681
+ return self.api_client.call_api(
682
+ '/api/ordermanagement/placeblocks', 'POST',
683
+ _path_params,
684
+ _query_params,
685
+ _header_params,
686
+ body=_body_params,
687
+ post_params=_form_params,
688
+ files=_files,
689
+ response_types_map=_response_types_map,
690
+ auth_settings=_auth_settings,
691
+ async_req=_params.get('async_req'),
692
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
693
+ _preload_content=_params.get('_preload_content', True),
694
+ _request_timeout=_params.get('_request_timeout'),
695
+ collection_formats=_collection_formats,
696
+ _request_auth=_params.get('_request_auth'))
697
+
217
698
  @overload
218
699
  async def run_allocation_service(self, resource_id : Annotated[conlist(ResourceId, max_items=100), Field(..., description="The List of Placement IDs for which you wish to allocate executions.")], allocation_algorithm : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="A string representation of the allocation algorithm you would like to use to allocate shares from executions e.g. \"PR-FIFO\". This defaults to \"PR-FIFO\".")] = None, **kwargs) -> AllocationServiceRunResponse: # noqa: E501
219
700
  ...