lusid-sdk 2.1.599__py3-none-any.whl → 2.1.637__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.
Files changed (147) hide show
  1. lusid/__init__.py +34 -0
  2. lusid/api/corporate_action_sources_api.py +6 -6
  3. lusid/api/entities_api.py +24 -24
  4. lusid/api/funds_api.py +438 -1
  5. lusid/api/order_management_api.py +16 -8
  6. lusid/api/staged_modifications_api.py +12 -12
  7. lusid/api/timelines_api.py +363 -0
  8. lusid/api/transaction_portfolios_api.py +183 -0
  9. lusid/api/workspace_api.py +96 -48
  10. lusid/configuration.py +1 -1
  11. lusid/models/__init__.py +34 -0
  12. lusid/models/accounted_transaction.py +88 -0
  13. lusid/models/accumulation_event.py +3 -3
  14. lusid/models/adjust_global_commitment_event.py +93 -0
  15. lusid/models/amortisation_event.py +3 -3
  16. lusid/models/basket.py +3 -3
  17. lusid/models/bond.py +11 -5
  18. lusid/models/bond_coupon_event.py +3 -3
  19. lusid/models/bond_default_event.py +3 -3
  20. lusid/models/bond_principal_event.py +3 -3
  21. lusid/models/bonus_issue_event.py +3 -3
  22. lusid/models/call_on_intermediate_securities_event.py +3 -3
  23. lusid/models/cancel_single_holding_adjustment_request.py +96 -0
  24. lusid/models/cap_floor.py +22 -7
  25. lusid/models/capital_distribution_event.py +3 -3
  26. lusid/models/cash.py +3 -3
  27. lusid/models/cash_dividend_event.py +3 -3
  28. lusid/models/cash_flow_event.py +3 -3
  29. lusid/models/cash_perpetual.py +3 -3
  30. lusid/models/cds_credit_event.py +3 -3
  31. lusid/models/cds_index.py +3 -3
  32. lusid/models/cdx_credit_event.py +3 -3
  33. lusid/models/close_event.py +3 -3
  34. lusid/models/closed_period.py +128 -0
  35. lusid/models/complete_portfolio.py +3 -3
  36. lusid/models/complex_bond.py +20 -7
  37. lusid/models/contract_details.py +101 -0
  38. lusid/models/contract_for_difference.py +3 -3
  39. lusid/models/contract_initialisation_event.py +99 -0
  40. lusid/models/create_closed_period_request.py +96 -0
  41. lusid/models/create_derived_property_definition_request.py +3 -3
  42. lusid/models/create_derived_transaction_portfolio_request.py +8 -2
  43. lusid/models/create_property_definition_request.py +3 -3
  44. lusid/models/credit_default_swap.py +3 -3
  45. lusid/models/credit_premium_cash_flow_event.py +3 -3
  46. lusid/models/dependency_source_filter.py +19 -4
  47. lusid/models/dividend_option_event.py +3 -3
  48. lusid/models/dividend_reinvestment_event.py +3 -3
  49. lusid/models/drawdown_event.py +99 -0
  50. lusid/models/early_redemption_event.py +3 -3
  51. lusid/models/eligibility_calculation.py +6 -4
  52. lusid/models/equity.py +3 -3
  53. lusid/models/equity_option.py +23 -7
  54. lusid/models/equity_swap.py +3 -3
  55. lusid/models/exchange_traded_option.py +12 -6
  56. lusid/models/exercise_event.py +3 -3
  57. lusid/models/exotic_instrument.py +3 -3
  58. lusid/models/expiry_event.py +3 -3
  59. lusid/models/fee_accrual.py +3 -1
  60. lusid/models/fixed_leg.py +3 -3
  61. lusid/models/flexible_deposit.py +105 -0
  62. lusid/models/flexible_loan.py +3 -3
  63. lusid/models/floating_leg.py +3 -3
  64. lusid/models/forward_rate_agreement.py +3 -3
  65. lusid/models/fund_share_class.py +3 -3
  66. lusid/models/funding_leg.py +3 -3
  67. lusid/models/future.py +19 -7
  68. lusid/models/future_expiry_event.py +3 -3
  69. lusid/models/future_mark_to_market_event.py +100 -0
  70. lusid/models/fx_forward.py +3 -3
  71. lusid/models/fx_forward_settlement_event.py +3 -3
  72. lusid/models/fx_option.py +3 -3
  73. lusid/models/fx_swap.py +3 -3
  74. lusid/models/group_reconciliation_summary.py +2 -2
  75. lusid/models/inflation_leg.py +3 -3
  76. lusid/models/inflation_linked_bond.py +11 -5
  77. lusid/models/inflation_swap.py +3 -3
  78. lusid/models/informational_error_event.py +3 -3
  79. lusid/models/informational_event.py +3 -3
  80. lusid/models/instrument_event.py +10 -5
  81. lusid/models/instrument_event_instruction.py +9 -2
  82. lusid/models/instrument_event_instruction_request.py +10 -3
  83. lusid/models/instrument_event_type.py +5 -0
  84. lusid/models/instrument_leg.py +3 -3
  85. lusid/models/instrument_type.py +1 -0
  86. lusid/models/interest_rate_swap.py +3 -3
  87. lusid/models/interest_rate_swaption.py +3 -3
  88. lusid/models/intermediate_securities_distribution_event.py +3 -3
  89. lusid/models/loan_facility.py +3 -3
  90. lusid/models/loan_interest_repayment_event.py +97 -0
  91. lusid/models/lusid_instrument.py +6 -5
  92. lusid/models/mark_to_market_conventions.py +74 -0
  93. lusid/models/market_data_key_rule.py +1 -1
  94. lusid/models/market_data_specific_rule.py +1 -1
  95. lusid/models/mastered_instrument.py +3 -3
  96. lusid/models/maturity_event.py +3 -3
  97. lusid/models/mbs_coupon_event.py +3 -3
  98. lusid/models/mbs_interest_deferral_event.py +3 -3
  99. lusid/models/mbs_interest_shortfall_event.py +3 -3
  100. lusid/models/mbs_principal_event.py +3 -3
  101. lusid/models/mbs_principal_write_off_event.py +3 -3
  102. lusid/models/merger_event.py +3 -3
  103. lusid/models/open_event.py +3 -3
  104. lusid/models/option_exercise_cash_event.py +3 -3
  105. lusid/models/option_exercise_physical_event.py +3 -3
  106. lusid/models/pnl_journal_entry_line.py +95 -0
  107. lusid/models/portfolio.py +3 -3
  108. lusid/models/portfolio_id.py +80 -0
  109. lusid/models/portfolio_search_result.py +3 -3
  110. lusid/models/portfolio_type.py +1 -0
  111. lusid/models/portfolio_without_href.py +3 -3
  112. lusid/models/property_definition.py +3 -3
  113. lusid/models/property_definition_search_result.py +3 -3
  114. lusid/models/property_domain.py +1 -0
  115. lusid/models/protection_payout_cash_flow_event.py +3 -3
  116. lusid/models/raw_vendor_event.py +3 -3
  117. lusid/models/reference_instrument.py +3 -3
  118. lusid/models/repo.py +3 -3
  119. lusid/models/reset_event.py +3 -3
  120. lusid/models/reverse_stock_split_event.py +3 -3
  121. lusid/models/scrip_dividend_event.py +3 -3
  122. lusid/models/side_definition.py +8 -1
  123. lusid/models/side_definition_request.py +9 -2
  124. lusid/models/simple_cash_flow_loan.py +3 -3
  125. lusid/models/simple_instrument.py +3 -3
  126. lusid/models/spin_off_event.py +3 -3
  127. lusid/models/stock_dividend_event.py +3 -3
  128. lusid/models/stock_split_event.py +3 -3
  129. lusid/models/swap_cash_flow_event.py +3 -3
  130. lusid/models/swap_principal_event.py +3 -3
  131. lusid/models/tender_event.py +3 -3
  132. lusid/models/term_deposit.py +3 -3
  133. lusid/models/term_deposit_interest_event.py +3 -3
  134. lusid/models/term_deposit_principal_event.py +3 -3
  135. lusid/models/total_return_swap.py +3 -3
  136. lusid/models/trading_conventions.py +73 -0
  137. lusid/models/transition_event.py +3 -3
  138. lusid/models/trigger_event.py +3 -3
  139. lusid/models/valuation_point_resource_list_of_accounted_transaction.py +125 -0
  140. lusid/models/valuation_point_resource_list_of_pnl_journal_entry_line.py +125 -0
  141. lusid/models/workspace.py +1 -1
  142. lusid/models/workspace_creation_request.py +1 -1
  143. lusid/models/workspace_item.py +4 -2
  144. lusid/models/workspace_item_creation_request.py +11 -2
  145. {lusid_sdk-2.1.599.dist-info → lusid_sdk-2.1.637.dist-info}/METADATA +32 -10
  146. {lusid_sdk-2.1.599.dist-info → lusid_sdk-2.1.637.dist-info}/RECORD +147 -130
  147. {lusid_sdk-2.1.599.dist-info → lusid_sdk-2.1.637.dist-info}/WHEEL +0 -0
@@ -53,15 +53,15 @@ class StagedModificationsApi:
53
53
  self.api_client = api_client
54
54
 
55
55
  @overload
56
- async def add_decision(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], **kwargs) -> StagedModification: # noqa: E501
56
+ async def add_decision(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], **kwargs) -> StagedModification: # noqa: E501
57
57
  ...
58
58
 
59
59
  @overload
60
- def add_decision(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], async_req: Optional[bool]=True, **kwargs) -> StagedModification: # noqa: E501
60
+ def add_decision(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], async_req: Optional[bool]=True, **kwargs) -> StagedModification: # noqa: E501
61
61
  ...
62
62
 
63
63
  @validate_arguments
64
- def add_decision(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], async_req: Optional[bool]=None, **kwargs) -> Union[StagedModification, Awaitable[StagedModification]]: # noqa: E501
64
+ def add_decision(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], async_req: Optional[bool]=None, **kwargs) -> Union[StagedModification, Awaitable[StagedModification]]: # noqa: E501
65
65
  """[EXPERIMENTAL] AddDecision: AddDecision # noqa: E501
66
66
 
67
67
  Add decision to staged modification, Approve or Reject. # noqa: E501
@@ -94,7 +94,7 @@ class StagedModificationsApi:
94
94
  return self.add_decision_with_http_info(id, staged_modification_decision_request, **kwargs) # noqa: E501
95
95
 
96
96
  @validate_arguments
97
- def add_decision_with_http_info(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], **kwargs) -> ApiResponse: # noqa: E501
97
+ def add_decision_with_http_info(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], staged_modification_decision_request : Annotated[StagedModificationDecisionRequest, Field(..., description="The decision on the requested staged modification, \"Approve\" or \"Reject\".")], **kwargs) -> ApiResponse: # noqa: E501
98
98
  """[EXPERIMENTAL] AddDecision: AddDecision # noqa: E501
99
99
 
100
100
  Add decision to staged modification, Approve or Reject. # noqa: E501
@@ -219,15 +219,15 @@ class StagedModificationsApi:
219
219
  _request_auth=_params.get('_request_auth'))
220
220
 
221
221
  @overload
222
- async def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, **kwargs) -> StagedModification: # noqa: E501
222
+ async def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, **kwargs) -> StagedModification: # noqa: E501
223
223
  ...
224
224
 
225
225
  @overload
226
- def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> StagedModification: # noqa: E501
226
+ def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> StagedModification: # noqa: E501
227
227
  ...
228
228
 
229
229
  @validate_arguments
230
- def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[StagedModification, Awaitable[StagedModification]]: # noqa: E501
230
+ def get_staged_modification(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[StagedModification, Awaitable[StagedModification]]: # noqa: E501
231
231
  """[EXPERIMENTAL] GetStagedModification: GetStagedModification # noqa: E501
232
232
 
233
233
  Retrieve the details of a staged modification. # noqa: E501
@@ -260,7 +260,7 @@ class StagedModificationsApi:
260
260
  return self.get_staged_modification_with_http_info(id, as_at, **kwargs) # noqa: E501
261
261
 
262
262
  @validate_arguments
263
- def get_staged_modification_with_http_info(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
263
+ def get_staged_modification_with_http_info(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="The unique identifier for a staged modification.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staged modification. Defaults to latest if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
264
264
  """[EXPERIMENTAL] GetStagedModification: GetStagedModification # noqa: E501
265
265
 
266
266
  Retrieve the details of a staged modification. # noqa: E501
@@ -381,15 +381,15 @@ class StagedModificationsApi:
381
381
  _request_auth=_params.get('_request_auth'))
382
382
 
383
383
  @overload
384
- async def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> PagedResourceListOfStagedModificationsRequestedChangeInterval: # noqa: E501
384
+ async def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> PagedResourceListOfStagedModificationsRequestedChangeInterval: # noqa: E501
385
385
  ...
386
386
 
387
387
  @overload
388
- def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfStagedModificationsRequestedChangeInterval: # noqa: E501
388
+ def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfStagedModificationsRequestedChangeInterval: # noqa: E501
389
389
  ...
390
390
 
391
391
  @validate_arguments
392
- def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfStagedModificationsRequestedChangeInterval, Awaitable[PagedResourceListOfStagedModificationsRequestedChangeInterval]]: # noqa: E501
392
+ def list_requested_changes(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfStagedModificationsRequestedChangeInterval, Awaitable[PagedResourceListOfStagedModificationsRequestedChangeInterval]]: # noqa: E501
393
393
  """[EXPERIMENTAL] ListRequestedChanges: ListRequestedChanges # noqa: E501
394
394
 
395
395
  List the requested changes for a staged modification. # noqa: E501
@@ -430,7 +430,7 @@ class StagedModificationsApi:
430
430
  return self.list_requested_changes_with_http_info(id, as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
431
431
 
432
432
  @validate_arguments
433
- def list_requested_changes_with_http_info(self, id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> ApiResponse: # noqa: E501
433
+ def list_requested_changes_with_http_info(self, id : Annotated[constr(strict=True, max_length=36, min_length=36), Field(..., description="Unique Id for a staged modification..")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list changes. Defaults to return the latest version of each staged change 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 requested staged modification changes from a previous call to list requested staged modifications. 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. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> ApiResponse: # noqa: E501
434
434
  """[EXPERIMENTAL] ListRequestedChanges: ListRequestedChanges # noqa: E501
435
435
 
436
436
  List the requested changes for a staged modification. # noqa: E501
@@ -26,6 +26,8 @@ from pydantic.v1 import Field, StrictStr, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
29
+ from lusid.models.closed_period import ClosedPeriod
30
+ from lusid.models.create_closed_period_request import CreateClosedPeriodRequest
29
31
  from lusid.models.create_timeline_request import CreateTimelineRequest
30
32
  from lusid.models.deleted_entity_response import DeletedEntityResponse
31
33
  from lusid.models.timeline import Timeline
@@ -52,6 +54,180 @@ class TimelinesApi:
52
54
  api_client = ApiClient.get_default()
53
55
  self.api_client = api_client
54
56
 
57
+ @overload
58
+ async def create_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline.")], create_closed_period_request : Annotated[Optional[CreateClosedPeriodRequest], Field(description="The request containing the details of the Closed Period")] = None, **kwargs) -> ClosedPeriod: # noqa: E501
59
+ ...
60
+
61
+ @overload
62
+ def create_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline.")], create_closed_period_request : Annotated[Optional[CreateClosedPeriodRequest], Field(description="The request containing the details of the Closed Period")] = None, async_req: Optional[bool]=True, **kwargs) -> ClosedPeriod: # noqa: E501
63
+ ...
64
+
65
+ @validate_arguments
66
+ def create_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline.")], create_closed_period_request : Annotated[Optional[CreateClosedPeriodRequest], Field(description="The request containing the details of the Closed Period")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ClosedPeriod, Awaitable[ClosedPeriod]]: # noqa: E501
67
+ """[EXPERIMENTAL] CreateClosedPeriod: Create a new closed period against a timeline entity # noqa: E501
68
+
69
+ Creates a new closed period against a timeline entity Returns the newly created closed period entity with properties # noqa: E501
70
+ This method makes a synchronous HTTP request by default. To make an
71
+ asynchronous HTTP request, please pass async_req=True
72
+
73
+ >>> thread = api.create_closed_period(scope, code, create_closed_period_request, async_req=True)
74
+ >>> result = thread.get()
75
+
76
+ :param scope: The scope of the specified Timeline. (required)
77
+ :type scope: str
78
+ :param code: The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline. (required)
79
+ :type code: str
80
+ :param create_closed_period_request: The request containing the details of the Closed Period
81
+ :type create_closed_period_request: CreateClosedPeriodRequest
82
+ :param async_req: Whether to execute the request asynchronously.
83
+ :type async_req: bool, optional
84
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
85
+ :param opts: Configuration options for this request
86
+ :type opts: ConfigurationOptions, optional
87
+ :return: Returns the result object.
88
+ If the method is called asynchronously,
89
+ returns the request thread.
90
+ :rtype: ClosedPeriod
91
+ """
92
+ kwargs['_return_http_data_only'] = True
93
+ if '_preload_content' in kwargs:
94
+ message = "Error! Please call the create_closed_period_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
95
+ raise ValueError(message)
96
+ if async_req is not None:
97
+ kwargs['async_req'] = async_req
98
+ return self.create_closed_period_with_http_info(scope, code, create_closed_period_request, **kwargs) # noqa: E501
99
+
100
+ @validate_arguments
101
+ def create_closed_period_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline.")], create_closed_period_request : Annotated[Optional[CreateClosedPeriodRequest], Field(description="The request containing the details of the Closed Period")] = None, **kwargs) -> ApiResponse: # noqa: E501
102
+ """[EXPERIMENTAL] CreateClosedPeriod: Create a new closed period against a timeline entity # noqa: E501
103
+
104
+ Creates a new closed period against a timeline entity Returns the newly created closed period entity with properties # noqa: E501
105
+ This method makes a synchronous HTTP request by default. To make an
106
+ asynchronous HTTP request, please pass async_req=True
107
+
108
+ >>> thread = api.create_closed_period_with_http_info(scope, code, create_closed_period_request, async_req=True)
109
+ >>> result = thread.get()
110
+
111
+ :param scope: The scope of the specified Timeline. (required)
112
+ :type scope: str
113
+ :param code: The code of the specified Timeline. Together with the domain and scope this uniquely identifies the Timeline. (required)
114
+ :type code: str
115
+ :param create_closed_period_request: The request containing the details of the Closed Period
116
+ :type create_closed_period_request: CreateClosedPeriodRequest
117
+ :param async_req: Whether to execute the request asynchronously.
118
+ :type async_req: bool, optional
119
+ :param _preload_content: if False, the ApiResponse.data will
120
+ be set to none and raw_data will store the
121
+ HTTP response body without reading/decoding.
122
+ Default is True.
123
+ :type _preload_content: bool, optional
124
+ :param _return_http_data_only: response data instead of ApiResponse
125
+ object with status code, headers, etc
126
+ :type _return_http_data_only: bool, optional
127
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
128
+ :param opts: Configuration options for this request
129
+ :type opts: ConfigurationOptions, optional
130
+ :param _request_auth: set to override the auth_settings for an a single
131
+ request; this effectively ignores the authentication
132
+ in the spec for a single request.
133
+ :type _request_auth: dict, optional
134
+ :type _content_type: string, optional: force content-type for the request
135
+ :return: Returns the result object.
136
+ If the method is called asynchronously,
137
+ returns the request thread.
138
+ :rtype: tuple(ClosedPeriod, status_code(int), headers(HTTPHeaderDict))
139
+ """
140
+
141
+ _params = locals()
142
+
143
+ _all_params = [
144
+ 'scope',
145
+ 'code',
146
+ 'create_closed_period_request'
147
+ ]
148
+ _all_params.extend(
149
+ [
150
+ 'async_req',
151
+ '_return_http_data_only',
152
+ '_preload_content',
153
+ '_request_timeout',
154
+ '_request_auth',
155
+ '_content_type',
156
+ '_headers',
157
+ 'opts'
158
+ ]
159
+ )
160
+
161
+ # validate the arguments
162
+ for _key, _val in _params['kwargs'].items():
163
+ if _key not in _all_params:
164
+ raise ApiTypeError(
165
+ "Got an unexpected keyword argument '%s'"
166
+ " to method create_closed_period" % _key
167
+ )
168
+ _params[_key] = _val
169
+ del _params['kwargs']
170
+
171
+ _collection_formats = {}
172
+
173
+ # process the path parameters
174
+ _path_params = {}
175
+ if _params['scope']:
176
+ _path_params['scope'] = _params['scope']
177
+
178
+ if _params['code']:
179
+ _path_params['code'] = _params['code']
180
+
181
+
182
+ # process the query parameters
183
+ _query_params = []
184
+ # process the header parameters
185
+ _header_params = dict(_params.get('_headers', {}))
186
+ # process the form parameters
187
+ _form_params = []
188
+ _files = {}
189
+ # process the body parameter
190
+ _body_params = None
191
+ if _params['create_closed_period_request'] is not None:
192
+ _body_params = _params['create_closed_period_request']
193
+
194
+ # set the HTTP header `Accept`
195
+ _header_params['Accept'] = self.api_client.select_header_accept(
196
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
197
+
198
+ # set the HTTP header `Content-Type`
199
+ _content_types_list = _params.get('_content_type',
200
+ self.api_client.select_header_content_type(
201
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
202
+ if _content_types_list:
203
+ _header_params['Content-Type'] = _content_types_list
204
+
205
+ # authentication setting
206
+ _auth_settings = ['oauth2'] # noqa: E501
207
+
208
+ _response_types_map = {
209
+ '201': "ClosedPeriod",
210
+ '400': "LusidValidationProblemDetails",
211
+ }
212
+
213
+ return self.api_client.call_api(
214
+ '/api/timelines/{scope}/{code}/closedperiods', 'POST',
215
+ _path_params,
216
+ _query_params,
217
+ _header_params,
218
+ body=_body_params,
219
+ post_params=_form_params,
220
+ files=_files,
221
+ response_types_map=_response_types_map,
222
+ auth_settings=_auth_settings,
223
+ async_req=_params.get('async_req'),
224
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
225
+ _preload_content=_params.get('_preload_content', True),
226
+ _request_timeout=_params.get('_request_timeout'),
227
+ opts=_params.get('opts'),
228
+ collection_formats=_collection_formats,
229
+ _request_auth=_params.get('_request_auth'))
230
+
55
231
  @overload
56
232
  async def create_timeline(self, create_timeline_request : Annotated[Optional[CreateTimelineRequest], Field(description="The request containing the details of the Timeline")] = None, **kwargs) -> Timeline: # noqa: E501
57
233
  ...
@@ -369,6 +545,193 @@ class TimelinesApi:
369
545
  collection_formats=_collection_formats,
370
546
  _request_auth=_params.get('_request_auth'))
371
547
 
548
+ @overload
549
+ async def get_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Timeline. Together with the scope this uniquely identifies the Timeline.")], closed_period_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.")] = None, **kwargs) -> ClosedPeriod: # noqa: E501
550
+ ...
551
+
552
+ @overload
553
+ def get_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Timeline. Together with the scope this uniquely identifies the Timeline.")], closed_period_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.")] = None, async_req: Optional[bool]=True, **kwargs) -> ClosedPeriod: # noqa: E501
554
+ ...
555
+
556
+ @validate_arguments
557
+ def get_closed_period(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Timeline. Together with the scope this uniquely identifies the Timeline.")], closed_period_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ClosedPeriod, Awaitable[ClosedPeriod]]: # noqa: E501
558
+ """[EXPERIMENTAL] GetClosedPeriod: Gets a Closed Period entity. # noqa: E501
559
+
560
+ Retrieves one ClosedPeriod uniquely defined by the Timelines Scope/Code and a ClosedPeriodId. # noqa: E501
561
+ This method makes a synchronous HTTP request by default. To make an
562
+ asynchronous HTTP request, please pass async_req=True
563
+
564
+ >>> thread = api.get_closed_period(scope, code, closed_period_id, as_at, property_keys, async_req=True)
565
+ >>> result = thread.get()
566
+
567
+ :param scope: The scope of the Timeline. (required)
568
+ :type scope: str
569
+ :param code: The code of the Timeline. Together with the scope this uniquely identifies the Timeline. (required)
570
+ :type code: str
571
+ :param closed_period_id: The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod (required)
572
+ :type closed_period_id: str
573
+ :param as_at: The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.
574
+ :type as_at: datetime
575
+ :param property_keys: A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.
576
+ :type property_keys: List[str]
577
+ :param async_req: Whether to execute the request asynchronously.
578
+ :type async_req: bool, optional
579
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
580
+ :param opts: Configuration options for this request
581
+ :type opts: ConfigurationOptions, optional
582
+ :return: Returns the result object.
583
+ If the method is called asynchronously,
584
+ returns the request thread.
585
+ :rtype: ClosedPeriod
586
+ """
587
+ kwargs['_return_http_data_only'] = True
588
+ if '_preload_content' in kwargs:
589
+ message = "Error! Please call the get_closed_period_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
590
+ raise ValueError(message)
591
+ if async_req is not None:
592
+ kwargs['async_req'] = async_req
593
+ return self.get_closed_period_with_http_info(scope, code, closed_period_id, as_at, property_keys, **kwargs) # noqa: E501
594
+
595
+ @validate_arguments
596
+ def get_closed_period_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Timeline. Together with the scope this uniquely identifies the Timeline.")], closed_period_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
597
+ """[EXPERIMENTAL] GetClosedPeriod: Gets a Closed Period entity. # noqa: E501
598
+
599
+ Retrieves one ClosedPeriod uniquely defined by the Timelines Scope/Code and a ClosedPeriodId. # noqa: E501
600
+ This method makes a synchronous HTTP request by default. To make an
601
+ asynchronous HTTP request, please pass async_req=True
602
+
603
+ >>> thread = api.get_closed_period_with_http_info(scope, code, closed_period_id, as_at, property_keys, async_req=True)
604
+ >>> result = thread.get()
605
+
606
+ :param scope: The scope of the Timeline. (required)
607
+ :type scope: str
608
+ :param code: The code of the Timeline. Together with the scope this uniquely identifies the Timeline. (required)
609
+ :type code: str
610
+ :param closed_period_id: The id of the Closed Period. Together with the scope and code of the Timeline, this uniquely identifies the ClosedPeriod (required)
611
+ :type closed_period_id: str
612
+ :param as_at: The asAt datetime at which to retrieve the ClosedPeriod definition. Defaults to return the latest version of the definition if not specified.
613
+ :type as_at: datetime
614
+ :param property_keys: A list of property keys from the 'ClosedPeriod' domain to decorate onto the ClosedPeriod. These must have the format {domain}/{scope}/{code}, for example 'ClosedPeriod/system/Name'.
615
+ :type property_keys: List[str]
616
+ :param async_req: Whether to execute the request asynchronously.
617
+ :type async_req: bool, optional
618
+ :param _preload_content: if False, the ApiResponse.data will
619
+ be set to none and raw_data will store the
620
+ HTTP response body without reading/decoding.
621
+ Default is True.
622
+ :type _preload_content: bool, optional
623
+ :param _return_http_data_only: response data instead of ApiResponse
624
+ object with status code, headers, etc
625
+ :type _return_http_data_only: bool, optional
626
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
627
+ :param opts: Configuration options for this request
628
+ :type opts: ConfigurationOptions, optional
629
+ :param _request_auth: set to override the auth_settings for an a single
630
+ request; this effectively ignores the authentication
631
+ in the spec for a single request.
632
+ :type _request_auth: dict, optional
633
+ :type _content_type: string, optional: force content-type for the request
634
+ :return: Returns the result object.
635
+ If the method is called asynchronously,
636
+ returns the request thread.
637
+ :rtype: tuple(ClosedPeriod, status_code(int), headers(HTTPHeaderDict))
638
+ """
639
+
640
+ _params = locals()
641
+
642
+ _all_params = [
643
+ 'scope',
644
+ 'code',
645
+ 'closed_period_id',
646
+ 'as_at',
647
+ 'property_keys'
648
+ ]
649
+ _all_params.extend(
650
+ [
651
+ 'async_req',
652
+ '_return_http_data_only',
653
+ '_preload_content',
654
+ '_request_timeout',
655
+ '_request_auth',
656
+ '_content_type',
657
+ '_headers',
658
+ 'opts'
659
+ ]
660
+ )
661
+
662
+ # validate the arguments
663
+ for _key, _val in _params['kwargs'].items():
664
+ if _key not in _all_params:
665
+ raise ApiTypeError(
666
+ "Got an unexpected keyword argument '%s'"
667
+ " to method get_closed_period" % _key
668
+ )
669
+ _params[_key] = _val
670
+ del _params['kwargs']
671
+
672
+ _collection_formats = {}
673
+
674
+ # process the path parameters
675
+ _path_params = {}
676
+ if _params['scope']:
677
+ _path_params['scope'] = _params['scope']
678
+
679
+ if _params['code']:
680
+ _path_params['code'] = _params['code']
681
+
682
+ if _params['closed_period_id']:
683
+ _path_params['closedPeriodId'] = _params['closed_period_id']
684
+
685
+
686
+ # process the query parameters
687
+ _query_params = []
688
+ if _params.get('as_at') is not None: # noqa: E501
689
+ if isinstance(_params['as_at'], datetime):
690
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
691
+ else:
692
+ _query_params.append(('asAt', _params['as_at']))
693
+
694
+ if _params.get('property_keys') is not None: # noqa: E501
695
+ _query_params.append(('propertyKeys', _params['property_keys']))
696
+ _collection_formats['propertyKeys'] = 'multi'
697
+
698
+ # process the header parameters
699
+ _header_params = dict(_params.get('_headers', {}))
700
+ # process the form parameters
701
+ _form_params = []
702
+ _files = {}
703
+ # process the body parameter
704
+ _body_params = None
705
+ # set the HTTP header `Accept`
706
+ _header_params['Accept'] = self.api_client.select_header_accept(
707
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
708
+
709
+ # authentication setting
710
+ _auth_settings = ['oauth2'] # noqa: E501
711
+
712
+ _response_types_map = {
713
+ '200': "ClosedPeriod",
714
+ '400': "LusidValidationProblemDetails",
715
+ }
716
+
717
+ return self.api_client.call_api(
718
+ '/api/timelines/{scope}/{code}/closedperiods/{closedPeriodId}', 'GET',
719
+ _path_params,
720
+ _query_params,
721
+ _header_params,
722
+ body=_body_params,
723
+ post_params=_form_params,
724
+ files=_files,
725
+ response_types_map=_response_types_map,
726
+ auth_settings=_auth_settings,
727
+ async_req=_params.get('async_req'),
728
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
729
+ _preload_content=_params.get('_preload_content', True),
730
+ _request_timeout=_params.get('_request_timeout'),
731
+ opts=_params.get('opts'),
732
+ collection_formats=_collection_formats,
733
+ _request_auth=_params.get('_request_auth'))
734
+
372
735
  @overload
373
736
  async def get_timeline(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified Timeline.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified Timeline. Together with the scope this uniquely identifies the Timeline.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Timeline definition. Defaults to return the latest version of the definition if not specified.")] = None, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the timeline properties. Defaults to the current LUSID system datetime if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Timeline' domain to decorate onto the Timeline. These must have the format {domain}/{scope}/{code}, for example 'Timeline/system/Name'.")] = None, **kwargs) -> Timeline: # noqa: E501
374
737
  ...