lusid-sdk 2.1.390__py3-none-any.whl → 2.1.405__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.
- lusid/__init__.py +22 -4
- lusid/api/order_management_api.py +25 -12
- lusid/api/persons_api.py +4 -4
- lusid/api/portfolios_api.py +179 -0
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +22 -4
- lusid/models/accumulation_event.py +3 -3
- lusid/models/amortisation_event.py +3 -3
- lusid/models/batch_upsert_portfolio_access_metadata_request.py +82 -0
- lusid/models/batch_upsert_portfolio_access_metadata_response.py +82 -0
- lusid/models/bond_coupon_event.py +3 -3
- lusid/models/bond_default_event.py +3 -3
- lusid/models/bond_principal_event.py +3 -3
- lusid/models/capital_distribution_event.py +3 -3
- lusid/models/cash_dividend_event.py +3 -3
- lusid/models/cash_flow_event.py +3 -3
- lusid/models/cds_credit_event.py +105 -0
- lusid/models/cdx_credit_event.py +114 -0
- lusid/models/change_interval_with_order_management_detail.py +137 -0
- lusid/models/close_event.py +3 -3
- lusid/models/credit_premium_cash_flow_event.py +102 -0
- lusid/models/dividend_option_event.py +3 -3
- lusid/models/dividend_reinvestment_event.py +3 -3
- lusid/models/exercise_event.py +3 -3
- lusid/models/expiry_event.py +3 -3
- lusid/models/future_expiry_event.py +3 -3
- lusid/models/fx_forward_settlement_event.py +13 -5
- lusid/models/holding_pricing_info.py +110 -0
- lusid/models/informational_error_event.py +3 -3
- lusid/models/informational_event.py +3 -3
- lusid/models/instrument_event.py +8 -5
- lusid/models/instrument_event_type.py +3 -0
- lusid/models/maturity_event.py +3 -3
- lusid/models/merger_event.py +3 -3
- lusid/models/metadata_key_value.py +86 -0
- lusid/models/metadata_key_value_response.py +86 -0
- lusid/models/open_event.py +3 -3
- lusid/models/pricing_context.py +8 -2
- lusid/models/raw_vendor_event.py +3 -3
- lusid/models/reset_event.py +3 -3
- lusid/models/{resource_list_of_entity_change_item.py → resource_list_of_change_interval_with_order_management_detail.py} +11 -11
- lusid/models/reverse_stock_split_event.py +3 -3
- lusid/models/scrip_dividend_event.py +3 -3
- lusid/models/specific_holding_pricing_info.py +75 -0
- lusid/models/spin_off_event.py +3 -3
- lusid/models/staged_modification.py +8 -1
- lusid/models/stock_dividend_event.py +3 -3
- lusid/models/stock_split_event.py +3 -3
- lusid/models/swap_cash_flow_event.py +3 -3
- lusid/models/swap_principal_event.py +3 -3
- lusid/models/transition_event.py +3 -3
- lusid/models/trigger_event.py +3 -3
- {lusid_sdk-2.1.390.dist-info → lusid_sdk-2.1.405.dist-info}/METADATA +15 -5
- {lusid_sdk-2.1.390.dist-info → lusid_sdk-2.1.405.dist-info}/RECORD +55 -46
- lusid/models/entity_change_item.py +0 -121
- {lusid_sdk-2.1.390.dist-info → lusid_sdk-2.1.405.dist-info}/WHEEL +0 -0
lusid/__init__.py
CHANGED
@@ -159,6 +159,8 @@ from lusid.models.basket import Basket
|
|
159
159
|
from lusid.models.basket_identifier import BasketIdentifier
|
160
160
|
from lusid.models.batch_adjust_holdings_response import BatchAdjustHoldingsResponse
|
161
161
|
from lusid.models.batch_upsert_instrument_properties_response import BatchUpsertInstrumentPropertiesResponse
|
162
|
+
from lusid.models.batch_upsert_portfolio_access_metadata_request import BatchUpsertPortfolioAccessMetadataRequest
|
163
|
+
from lusid.models.batch_upsert_portfolio_access_metadata_response import BatchUpsertPortfolioAccessMetadataResponse
|
162
164
|
from lusid.models.batch_upsert_portfolio_transactions_response import BatchUpsertPortfolioTransactionsResponse
|
163
165
|
from lusid.models.batch_upsert_property_definition_properties_response import BatchUpsertPropertyDefinitionPropertiesResponse
|
164
166
|
from lusid.models.block import Block
|
@@ -206,12 +208,15 @@ from lusid.models.cash_flow_value_set import CashFlowValueSet
|
|
206
208
|
from lusid.models.cash_ladder_record import CashLadderRecord
|
207
209
|
from lusid.models.cash_offer_election import CashOfferElection
|
208
210
|
from lusid.models.cash_perpetual import CashPerpetual
|
211
|
+
from lusid.models.cds_credit_event import CdsCreditEvent
|
209
212
|
from lusid.models.cds_flow_conventions import CdsFlowConventions
|
210
213
|
from lusid.models.cds_index import CdsIndex
|
211
214
|
from lusid.models.cds_protection_detail_specification import CdsProtectionDetailSpecification
|
215
|
+
from lusid.models.cdx_credit_event import CdxCreditEvent
|
212
216
|
from lusid.models.change import Change
|
213
217
|
from lusid.models.change_history import ChangeHistory
|
214
218
|
from lusid.models.change_history_action import ChangeHistoryAction
|
219
|
+
from lusid.models.change_interval_with_order_management_detail import ChangeIntervalWithOrderManagementDetail
|
215
220
|
from lusid.models.change_item import ChangeItem
|
216
221
|
from lusid.models.chart_of_accounts import ChartOfAccounts
|
217
222
|
from lusid.models.chart_of_accounts_properties import ChartOfAccountsProperties
|
@@ -312,6 +317,7 @@ from lusid.models.create_trade_tickets_response import CreateTradeTicketsRespons
|
|
312
317
|
from lusid.models.create_transaction_portfolio_request import CreateTransactionPortfolioRequest
|
313
318
|
from lusid.models.create_unit_definition import CreateUnitDefinition
|
314
319
|
from lusid.models.credit_default_swap import CreditDefaultSwap
|
320
|
+
from lusid.models.credit_premium_cash_flow_event import CreditPremiumCashFlowEvent
|
315
321
|
from lusid.models.credit_rating import CreditRating
|
316
322
|
from lusid.models.credit_spread_curve_data import CreditSpreadCurveData
|
317
323
|
from lusid.models.credit_support_annex import CreditSupportAnnex
|
@@ -380,7 +386,6 @@ from lusid.models.economic_dependency_with_quote import EconomicDependencyWithQu
|
|
380
386
|
from lusid.models.election_specification import ElectionSpecification
|
381
387
|
from lusid.models.eligibility_calculation import EligibilityCalculation
|
382
388
|
from lusid.models.empty_model_options import EmptyModelOptions
|
383
|
-
from lusid.models.entity_change_item import EntityChangeItem
|
384
389
|
from lusid.models.entity_identifier import EntityIdentifier
|
385
390
|
from lusid.models.equity import Equity
|
386
391
|
from lusid.models.equity_all_of_identifiers import EquityAllOfIdentifiers
|
@@ -503,6 +508,7 @@ from lusid.models.holding_adjustment import HoldingAdjustment
|
|
503
508
|
from lusid.models.holding_adjustment_with_date import HoldingAdjustmentWithDate
|
504
509
|
from lusid.models.holding_context import HoldingContext
|
505
510
|
from lusid.models.holding_contributor import HoldingContributor
|
511
|
+
from lusid.models.holding_pricing_info import HoldingPricingInfo
|
506
512
|
from lusid.models.holdings_adjustment import HoldingsAdjustment
|
507
513
|
from lusid.models.holdings_adjustment_header import HoldingsAdjustmentHeader
|
508
514
|
from lusid.models.i_unit_definition_dto import IUnitDefinitionDto
|
@@ -594,6 +600,8 @@ from lusid.models.market_quote import MarketQuote
|
|
594
600
|
from lusid.models.match_criterion import MatchCriterion
|
595
601
|
from lusid.models.maturity_event import MaturityEvent
|
596
602
|
from lusid.models.merger_event import MergerEvent
|
603
|
+
from lusid.models.metadata_key_value import MetadataKeyValue
|
604
|
+
from lusid.models.metadata_key_value_response import MetadataKeyValueResponse
|
597
605
|
from lusid.models.metric_value import MetricValue
|
598
606
|
from lusid.models.model_options import ModelOptions
|
599
607
|
from lusid.models.model_options_type import ModelOptionsType
|
@@ -855,6 +863,7 @@ from lusid.models.resource_list_of_block_and_orders import ResourceListOfBlockAn
|
|
855
863
|
from lusid.models.resource_list_of_calendar_date import ResourceListOfCalendarDate
|
856
864
|
from lusid.models.resource_list_of_change import ResourceListOfChange
|
857
865
|
from lusid.models.resource_list_of_change_history import ResourceListOfChangeHistory
|
866
|
+
from lusid.models.resource_list_of_change_interval_with_order_management_detail import ResourceListOfChangeIntervalWithOrderManagementDetail
|
858
867
|
from lusid.models.resource_list_of_compliance_breached_order_info import ResourceListOfComplianceBreachedOrderInfo
|
859
868
|
from lusid.models.resource_list_of_compliance_rule import ResourceListOfComplianceRule
|
860
869
|
from lusid.models.resource_list_of_compliance_rule_result import ResourceListOfComplianceRuleResult
|
@@ -862,7 +871,6 @@ from lusid.models.resource_list_of_compliance_run_info import ResourceListOfComp
|
|
862
871
|
from lusid.models.resource_list_of_constituents_adjustment_header import ResourceListOfConstituentsAdjustmentHeader
|
863
872
|
from lusid.models.resource_list_of_corporate_action import ResourceListOfCorporateAction
|
864
873
|
from lusid.models.resource_list_of_data_type import ResourceListOfDataType
|
865
|
-
from lusid.models.resource_list_of_entity_change_item import ResourceListOfEntityChangeItem
|
866
874
|
from lusid.models.resource_list_of_execution import ResourceListOfExecution
|
867
875
|
from lusid.models.resource_list_of_fee_rule import ResourceListOfFeeRule
|
868
876
|
from lusid.models.resource_list_of_get_cds_flow_conventions_response import ResourceListOfGetCdsFlowConventionsResponse
|
@@ -961,6 +969,7 @@ from lusid.models.sides_definition_request import SidesDefinitionRequest
|
|
961
969
|
from lusid.models.simple_cash_flow_loan import SimpleCashFlowLoan
|
962
970
|
from lusid.models.simple_instrument import SimpleInstrument
|
963
971
|
from lusid.models.sort_order import SortOrder
|
972
|
+
from lusid.models.specific_holding_pricing_info import SpecificHoldingPricingInfo
|
964
973
|
from lusid.models.spin_off_event import SpinOffEvent
|
965
974
|
from lusid.models.staged_modification import StagedModification
|
966
975
|
from lusid.models.staged_modification_decision import StagedModificationDecision
|
@@ -1300,6 +1309,8 @@ __all__ = [
|
|
1300
1309
|
"BasketIdentifier",
|
1301
1310
|
"BatchAdjustHoldingsResponse",
|
1302
1311
|
"BatchUpsertInstrumentPropertiesResponse",
|
1312
|
+
"BatchUpsertPortfolioAccessMetadataRequest",
|
1313
|
+
"BatchUpsertPortfolioAccessMetadataResponse",
|
1303
1314
|
"BatchUpsertPortfolioTransactionsResponse",
|
1304
1315
|
"BatchUpsertPropertyDefinitionPropertiesResponse",
|
1305
1316
|
"Block",
|
@@ -1347,12 +1358,15 @@ __all__ = [
|
|
1347
1358
|
"CashLadderRecord",
|
1348
1359
|
"CashOfferElection",
|
1349
1360
|
"CashPerpetual",
|
1361
|
+
"CdsCreditEvent",
|
1350
1362
|
"CdsFlowConventions",
|
1351
1363
|
"CdsIndex",
|
1352
1364
|
"CdsProtectionDetailSpecification",
|
1365
|
+
"CdxCreditEvent",
|
1353
1366
|
"Change",
|
1354
1367
|
"ChangeHistory",
|
1355
1368
|
"ChangeHistoryAction",
|
1369
|
+
"ChangeIntervalWithOrderManagementDetail",
|
1356
1370
|
"ChangeItem",
|
1357
1371
|
"ChartOfAccounts",
|
1358
1372
|
"ChartOfAccountsProperties",
|
@@ -1453,6 +1467,7 @@ __all__ = [
|
|
1453
1467
|
"CreateTransactionPortfolioRequest",
|
1454
1468
|
"CreateUnitDefinition",
|
1455
1469
|
"CreditDefaultSwap",
|
1470
|
+
"CreditPremiumCashFlowEvent",
|
1456
1471
|
"CreditRating",
|
1457
1472
|
"CreditSpreadCurveData",
|
1458
1473
|
"CreditSupportAnnex",
|
@@ -1521,7 +1536,6 @@ __all__ = [
|
|
1521
1536
|
"ElectionSpecification",
|
1522
1537
|
"EligibilityCalculation",
|
1523
1538
|
"EmptyModelOptions",
|
1524
|
-
"EntityChangeItem",
|
1525
1539
|
"EntityIdentifier",
|
1526
1540
|
"Equity",
|
1527
1541
|
"EquityAllOfIdentifiers",
|
@@ -1644,6 +1658,7 @@ __all__ = [
|
|
1644
1658
|
"HoldingAdjustmentWithDate",
|
1645
1659
|
"HoldingContext",
|
1646
1660
|
"HoldingContributor",
|
1661
|
+
"HoldingPricingInfo",
|
1647
1662
|
"HoldingsAdjustment",
|
1648
1663
|
"HoldingsAdjustmentHeader",
|
1649
1664
|
"IUnitDefinitionDto",
|
@@ -1735,6 +1750,8 @@ __all__ = [
|
|
1735
1750
|
"MatchCriterion",
|
1736
1751
|
"MaturityEvent",
|
1737
1752
|
"MergerEvent",
|
1753
|
+
"MetadataKeyValue",
|
1754
|
+
"MetadataKeyValueResponse",
|
1738
1755
|
"MetricValue",
|
1739
1756
|
"ModelOptions",
|
1740
1757
|
"ModelOptionsType",
|
@@ -1996,6 +2013,7 @@ __all__ = [
|
|
1996
2013
|
"ResourceListOfCalendarDate",
|
1997
2014
|
"ResourceListOfChange",
|
1998
2015
|
"ResourceListOfChangeHistory",
|
2016
|
+
"ResourceListOfChangeIntervalWithOrderManagementDetail",
|
1999
2017
|
"ResourceListOfComplianceBreachedOrderInfo",
|
2000
2018
|
"ResourceListOfComplianceRule",
|
2001
2019
|
"ResourceListOfComplianceRuleResult",
|
@@ -2003,7 +2021,6 @@ __all__ = [
|
|
2003
2021
|
"ResourceListOfConstituentsAdjustmentHeader",
|
2004
2022
|
"ResourceListOfCorporateAction",
|
2005
2023
|
"ResourceListOfDataType",
|
2006
|
-
"ResourceListOfEntityChangeItem",
|
2007
2024
|
"ResourceListOfExecution",
|
2008
2025
|
"ResourceListOfFeeRule",
|
2009
2026
|
"ResourceListOfGetCdsFlowConventionsResponse",
|
@@ -2102,6 +2119,7 @@ __all__ = [
|
|
2102
2119
|
"SimpleCashFlowLoan",
|
2103
2120
|
"SimpleInstrument",
|
2104
2121
|
"SortOrder",
|
2122
|
+
"SpecificHoldingPricingInfo",
|
2105
2123
|
"SpinOffEvent",
|
2106
2124
|
"StagedModification",
|
2107
2125
|
"StagedModificationDecision",
|
@@ -20,6 +20,8 @@ from pydantic.v1 import validate_arguments, ValidationError
|
|
20
20
|
from typing import overload, Optional, Union, Awaitable
|
21
21
|
|
22
22
|
from typing_extensions import Annotated
|
23
|
+
from datetime import datetime
|
24
|
+
|
23
25
|
from pydantic.v1 import Field, StrictBool, conlist, constr, validator
|
24
26
|
|
25
27
|
from typing import Dict, Optional
|
@@ -36,7 +38,7 @@ from lusid.models.place_blocks_request import PlaceBlocksRequest
|
|
36
38
|
from lusid.models.placement_update_request import PlacementUpdateRequest
|
37
39
|
from lusid.models.resource_id import ResourceId
|
38
40
|
from lusid.models.resource_list_of_block_and_orders import ResourceListOfBlockAndOrders
|
39
|
-
from lusid.models.
|
41
|
+
from lusid.models.resource_list_of_change_interval_with_order_management_detail import ResourceListOfChangeIntervalWithOrderManagementDetail
|
40
42
|
from lusid.models.resource_list_of_moved_order_to_different_block_response import ResourceListOfMovedOrderToDifferentBlockResponse
|
41
43
|
from lusid.models.resource_list_of_placement import ResourceListOfPlacement
|
42
44
|
from lusid.models.update_orders_response import UpdateOrdersResponse
|
@@ -703,28 +705,30 @@ class OrderManagementApi:
|
|
703
705
|
_request_auth=_params.get('_request_auth'))
|
704
706
|
|
705
707
|
@overload
|
706
|
-
async def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], **kwargs) ->
|
708
|
+
async def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.")] = None, **kwargs) -> ResourceListOfChangeIntervalWithOrderManagementDetail: # noqa: E501
|
707
709
|
...
|
708
710
|
|
709
711
|
@overload
|
710
|
-
def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], async_req: Optional[bool]=True, **kwargs) ->
|
712
|
+
def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfChangeIntervalWithOrderManagementDetail: # noqa: E501
|
711
713
|
...
|
712
714
|
|
713
715
|
@validate_arguments
|
714
|
-
def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], async_req: Optional[bool]=None, **kwargs) -> Union[
|
716
|
+
def get_order_history(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfChangeIntervalWithOrderManagementDetail, Awaitable[ResourceListOfChangeIntervalWithOrderManagementDetail]]: # noqa: E501
|
715
717
|
"""[EXPERIMENTAL] GetOrderHistory: Get the history of an order and related entity changes # noqa: E501
|
716
718
|
|
717
719
|
Get the changes that have happened to an order and related entities. # noqa: E501
|
718
720
|
This method makes a synchronous HTTP request by default. To make an
|
719
721
|
asynchronous HTTP request, please pass async_req=True
|
720
722
|
|
721
|
-
>>> thread = api.get_order_history(scope, code, async_req=True)
|
723
|
+
>>> thread = api.get_order_history(scope, code, as_at, async_req=True)
|
722
724
|
>>> result = thread.get()
|
723
725
|
|
724
726
|
:param scope: The scope of the order. (required)
|
725
727
|
:type scope: str
|
726
728
|
:param code: The code of the order. (required)
|
727
729
|
:type code: str
|
730
|
+
:param as_at: The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.
|
731
|
+
:type as_at: datetime
|
728
732
|
:param async_req: Whether to execute the request asynchronously.
|
729
733
|
:type async_req: bool, optional
|
730
734
|
:param _request_timeout: timeout setting for this request.
|
@@ -734,7 +738,7 @@ class OrderManagementApi:
|
|
734
738
|
:return: Returns the result object.
|
735
739
|
If the method is called asynchronously,
|
736
740
|
returns the request thread.
|
737
|
-
:rtype:
|
741
|
+
:rtype: ResourceListOfChangeIntervalWithOrderManagementDetail
|
738
742
|
"""
|
739
743
|
kwargs['_return_http_data_only'] = True
|
740
744
|
if '_preload_content' in kwargs:
|
@@ -742,23 +746,25 @@ class OrderManagementApi:
|
|
742
746
|
raise ValueError(message)
|
743
747
|
if async_req is not None:
|
744
748
|
kwargs['async_req'] = async_req
|
745
|
-
return self.get_order_history_with_http_info(scope, code, **kwargs) # noqa: E501
|
749
|
+
return self.get_order_history_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
|
746
750
|
|
747
751
|
@validate_arguments
|
748
|
-
def get_order_history_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], **kwargs) -> ApiResponse: # noqa: E501
|
752
|
+
def get_order_history_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the order.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the order.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
749
753
|
"""[EXPERIMENTAL] GetOrderHistory: Get the history of an order and related entity changes # noqa: E501
|
750
754
|
|
751
755
|
Get the changes that have happened to an order and related entities. # noqa: E501
|
752
756
|
This method makes a synchronous HTTP request by default. To make an
|
753
757
|
asynchronous HTTP request, please pass async_req=True
|
754
758
|
|
755
|
-
>>> thread = api.get_order_history_with_http_info(scope, code, async_req=True)
|
759
|
+
>>> thread = api.get_order_history_with_http_info(scope, code, as_at, async_req=True)
|
756
760
|
>>> result = thread.get()
|
757
761
|
|
758
762
|
:param scope: The scope of the order. (required)
|
759
763
|
:type scope: str
|
760
764
|
:param code: The code of the order. (required)
|
761
765
|
:type code: str
|
766
|
+
:param as_at: The asAt datetime at which to retrieve the history of the order and related entities. Defaults to return the latest version if not specified.
|
767
|
+
:type as_at: datetime
|
762
768
|
:param async_req: Whether to execute the request asynchronously.
|
763
769
|
:type async_req: bool, optional
|
764
770
|
:param _preload_content: if False, the ApiResponse.data will
|
@@ -781,14 +787,15 @@ class OrderManagementApi:
|
|
781
787
|
:return: Returns the result object.
|
782
788
|
If the method is called asynchronously,
|
783
789
|
returns the request thread.
|
784
|
-
:rtype: tuple(
|
790
|
+
:rtype: tuple(ResourceListOfChangeIntervalWithOrderManagementDetail, status_code(int), headers(HTTPHeaderDict))
|
785
791
|
"""
|
786
792
|
|
787
793
|
_params = locals()
|
788
794
|
|
789
795
|
_all_params = [
|
790
796
|
'scope',
|
791
|
-
'code'
|
797
|
+
'code',
|
798
|
+
'as_at'
|
792
799
|
]
|
793
800
|
_all_params.extend(
|
794
801
|
[
|
@@ -825,6 +832,12 @@ class OrderManagementApi:
|
|
825
832
|
|
826
833
|
# process the query parameters
|
827
834
|
_query_params = []
|
835
|
+
if _params.get('as_at') is not None: # noqa: E501
|
836
|
+
if isinstance(_params['as_at'], datetime):
|
837
|
+
_query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
|
838
|
+
else:
|
839
|
+
_query_params.append(('asAt', _params['as_at']))
|
840
|
+
|
828
841
|
# process the header parameters
|
829
842
|
_header_params = dict(_params.get('_headers', {}))
|
830
843
|
# process the form parameters
|
@@ -840,7 +853,7 @@ class OrderManagementApi:
|
|
840
853
|
_auth_settings = ['oauth2'] # noqa: E501
|
841
854
|
|
842
855
|
_response_types_map = {
|
843
|
-
'200': "
|
856
|
+
'200': "ResourceListOfChangeIntervalWithOrderManagementDetail",
|
844
857
|
'400': "LusidValidationProblemDetails",
|
845
858
|
'404': "str",
|
846
859
|
}
|
lusid/api/persons_api.py
CHANGED
@@ -72,7 +72,7 @@ class PersonsApi:
|
|
72
72
|
|
73
73
|
@validate_arguments
|
74
74
|
def delete_person(self, id_type_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the person identifier type.")], id_type_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the person identifier type.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of the person under specified identifier type scope and code. This together with defined identifier type uniquely identifies the person to delete.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
|
75
|
-
"""
|
75
|
+
"""DeletePerson: Delete person # noqa: E501
|
76
76
|
|
77
77
|
Delete a person. Deletion will be valid from the person's creation datetime. This means that the person will no longer exist at any effective datetime from the asAt datetime of deletion. # noqa: E501
|
78
78
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -108,7 +108,7 @@ class PersonsApi:
|
|
108
108
|
|
109
109
|
@validate_arguments
|
110
110
|
def delete_person_with_http_info(self, id_type_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the person identifier type.")], id_type_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the person identifier type.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of the person under specified identifier type scope and code. This together with defined identifier type uniquely identifies the person to delete.")], **kwargs) -> ApiResponse: # noqa: E501
|
111
|
-
"""
|
111
|
+
"""DeletePerson: Delete person # noqa: E501
|
112
112
|
|
113
113
|
Delete a person. Deletion will be valid from the person's creation datetime. This means that the person will no longer exist at any effective datetime from the asAt datetime of deletion. # noqa: E501
|
114
114
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -2990,7 +2990,7 @@ class PersonsApi:
|
|
2990
2990
|
|
2991
2991
|
@validate_arguments
|
2992
2992
|
def upsert_person(self, upsert_person_request : Annotated[UpsertPersonRequest, Field(..., description="Request to create or update a person.")], async_req: Optional[bool]=None, **kwargs) -> Union[Person, Awaitable[Person]]: # noqa: E501
|
2993
|
-
"""
|
2993
|
+
"""UpsertPerson: Upsert Person # noqa: E501
|
2994
2994
|
|
2995
2995
|
Create or update a new person under the specified scope. # noqa: E501
|
2996
2996
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -3022,7 +3022,7 @@ class PersonsApi:
|
|
3022
3022
|
|
3023
3023
|
@validate_arguments
|
3024
3024
|
def upsert_person_with_http_info(self, upsert_person_request : Annotated[UpsertPersonRequest, Field(..., description="Request to create or update a person.")], **kwargs) -> ApiResponse: # noqa: E501
|
3025
|
-
"""
|
3025
|
+
"""UpsertPerson: Upsert Person # noqa: E501
|
3026
3026
|
|
3027
3027
|
Create or update a new person under the specified scope. # noqa: E501
|
3028
3028
|
This method makes a synchronous HTTP request by default. To make an
|
lusid/api/portfolios_api.py
CHANGED
@@ -31,6 +31,8 @@ from lusid.models.access_metadata_value import AccessMetadataValue
|
|
31
31
|
from lusid.models.aggregated_returns_dispersion_request import AggregatedReturnsDispersionRequest
|
32
32
|
from lusid.models.aggregated_returns_request import AggregatedReturnsRequest
|
33
33
|
from lusid.models.aggregated_returns_response import AggregatedReturnsResponse
|
34
|
+
from lusid.models.batch_upsert_portfolio_access_metadata_request import BatchUpsertPortfolioAccessMetadataRequest
|
35
|
+
from lusid.models.batch_upsert_portfolio_access_metadata_response import BatchUpsertPortfolioAccessMetadataResponse
|
34
36
|
from lusid.models.composite_breakdown_request import CompositeBreakdownRequest
|
35
37
|
from lusid.models.composite_breakdown_response import CompositeBreakdownResponse
|
36
38
|
from lusid.models.composite_dispersion_response import CompositeDispersionResponse
|
@@ -77,6 +79,183 @@ class PortfoliosApi:
|
|
77
79
|
api_client = ApiClient.get_default()
|
78
80
|
self.api_client = api_client
|
79
81
|
|
82
|
+
@overload
|
83
|
+
async def batch_upsert_portfolio_access_metadata(self, batch_upsert_portfolio_access_metadata_request : Annotated[BatchUpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> BatchUpsertPortfolioAccessMetadataResponse: # noqa: E501
|
84
|
+
...
|
85
|
+
|
86
|
+
@overload
|
87
|
+
def batch_upsert_portfolio_access_metadata(self, batch_upsert_portfolio_access_metadata_request : Annotated[BatchUpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpsertPortfolioAccessMetadataResponse: # noqa: E501
|
88
|
+
...
|
89
|
+
|
90
|
+
@validate_arguments
|
91
|
+
def batch_upsert_portfolio_access_metadata(self, batch_upsert_portfolio_access_metadata_request : Annotated[BatchUpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpsertPortfolioAccessMetadataResponse, Awaitable[BatchUpsertPortfolioAccessMetadataResponse]]: # noqa: E501
|
92
|
+
"""[EXPERIMENTAL] BatchUpsertPortfolioAccessMetadata: Upsert multiple portfolio access metadata with different keys to multiple portfolios # noqa: E501
|
93
|
+
|
94
|
+
Update or insert multiple Portfolios Access Metadata Rule in multiple scopes. Items will be updated if it already exists and inserted if it does not. No other items will be affected The response will return the successfully updated or inserted Portfolio Access Metadata Rules or failure message if unsuccessful It is important to always check to verify success (or failure). Multiple rules for a metadataKey can exist with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
|
95
|
+
This method makes a synchronous HTTP request by default. To make an
|
96
|
+
asynchronous HTTP request, please pass async_req=True
|
97
|
+
|
98
|
+
>>> thread = api.batch_upsert_portfolio_access_metadata(batch_upsert_portfolio_access_metadata_request, effective_at, effective_until, async_req=True)
|
99
|
+
>>> result = thread.get()
|
100
|
+
|
101
|
+
:param batch_upsert_portfolio_access_metadata_request: The Portfolio Access Metadata Rule to update or insert (required)
|
102
|
+
:type batch_upsert_portfolio_access_metadata_request: BatchUpsertPortfolioAccessMetadataRequest
|
103
|
+
:param effective_at: The date this rule will effective from
|
104
|
+
:type effective_at: str
|
105
|
+
:param effective_until: The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata
|
106
|
+
:type effective_until: datetime
|
107
|
+
:param async_req: Whether to execute the request asynchronously.
|
108
|
+
:type async_req: bool, optional
|
109
|
+
:param _request_timeout: timeout setting for this request.
|
110
|
+
If one number provided, it will be total request
|
111
|
+
timeout. It can also be a pair (tuple) of
|
112
|
+
(connection, read) timeouts.
|
113
|
+
:return: Returns the result object.
|
114
|
+
If the method is called asynchronously,
|
115
|
+
returns the request thread.
|
116
|
+
:rtype: BatchUpsertPortfolioAccessMetadataResponse
|
117
|
+
"""
|
118
|
+
kwargs['_return_http_data_only'] = True
|
119
|
+
if '_preload_content' in kwargs:
|
120
|
+
message = "Error! Please call the batch_upsert_portfolio_access_metadata_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
121
|
+
raise ValueError(message)
|
122
|
+
if async_req is not None:
|
123
|
+
kwargs['async_req'] = async_req
|
124
|
+
return self.batch_upsert_portfolio_access_metadata_with_http_info(batch_upsert_portfolio_access_metadata_request, effective_at, effective_until, **kwargs) # noqa: E501
|
125
|
+
|
126
|
+
@validate_arguments
|
127
|
+
def batch_upsert_portfolio_access_metadata_with_http_info(self, batch_upsert_portfolio_access_metadata_request : Annotated[BatchUpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
128
|
+
"""[EXPERIMENTAL] BatchUpsertPortfolioAccessMetadata: Upsert multiple portfolio access metadata with different keys to multiple portfolios # noqa: E501
|
129
|
+
|
130
|
+
Update or insert multiple Portfolios Access Metadata Rule in multiple scopes. Items will be updated if it already exists and inserted if it does not. No other items will be affected The response will return the successfully updated or inserted Portfolio Access Metadata Rules or failure message if unsuccessful It is important to always check to verify success (or failure). Multiple rules for a metadataKey can exist with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
|
131
|
+
This method makes a synchronous HTTP request by default. To make an
|
132
|
+
asynchronous HTTP request, please pass async_req=True
|
133
|
+
|
134
|
+
>>> thread = api.batch_upsert_portfolio_access_metadata_with_http_info(batch_upsert_portfolio_access_metadata_request, effective_at, effective_until, async_req=True)
|
135
|
+
>>> result = thread.get()
|
136
|
+
|
137
|
+
:param batch_upsert_portfolio_access_metadata_request: The Portfolio Access Metadata Rule to update or insert (required)
|
138
|
+
:type batch_upsert_portfolio_access_metadata_request: BatchUpsertPortfolioAccessMetadataRequest
|
139
|
+
:param effective_at: The date this rule will effective from
|
140
|
+
:type effective_at: str
|
141
|
+
:param effective_until: The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata
|
142
|
+
:type effective_until: datetime
|
143
|
+
:param async_req: Whether to execute the request asynchronously.
|
144
|
+
:type async_req: bool, optional
|
145
|
+
:param _preload_content: if False, the ApiResponse.data will
|
146
|
+
be set to none and raw_data will store the
|
147
|
+
HTTP response body without reading/decoding.
|
148
|
+
Default is True.
|
149
|
+
:type _preload_content: bool, optional
|
150
|
+
:param _return_http_data_only: response data instead of ApiResponse
|
151
|
+
object with status code, headers, etc
|
152
|
+
:type _return_http_data_only: bool, optional
|
153
|
+
:param _request_timeout: timeout setting for this request. If one
|
154
|
+
number provided, it will be total request
|
155
|
+
timeout. It can also be a pair (tuple) of
|
156
|
+
(connection, read) timeouts.
|
157
|
+
:param _request_auth: set to override the auth_settings for an a single
|
158
|
+
request; this effectively ignores the authentication
|
159
|
+
in the spec for a single request.
|
160
|
+
:type _request_auth: dict, optional
|
161
|
+
:type _content_type: string, optional: force content-type for the request
|
162
|
+
:return: Returns the result object.
|
163
|
+
If the method is called asynchronously,
|
164
|
+
returns the request thread.
|
165
|
+
:rtype: tuple(BatchUpsertPortfolioAccessMetadataResponse, status_code(int), headers(HTTPHeaderDict))
|
166
|
+
"""
|
167
|
+
|
168
|
+
_params = locals()
|
169
|
+
|
170
|
+
_all_params = [
|
171
|
+
'batch_upsert_portfolio_access_metadata_request',
|
172
|
+
'effective_at',
|
173
|
+
'effective_until'
|
174
|
+
]
|
175
|
+
_all_params.extend(
|
176
|
+
[
|
177
|
+
'async_req',
|
178
|
+
'_return_http_data_only',
|
179
|
+
'_preload_content',
|
180
|
+
'_request_timeout',
|
181
|
+
'_request_auth',
|
182
|
+
'_content_type',
|
183
|
+
'_headers'
|
184
|
+
]
|
185
|
+
)
|
186
|
+
|
187
|
+
# validate the arguments
|
188
|
+
for _key, _val in _params['kwargs'].items():
|
189
|
+
if _key not in _all_params:
|
190
|
+
raise ApiTypeError(
|
191
|
+
"Got an unexpected keyword argument '%s'"
|
192
|
+
" to method batch_upsert_portfolio_access_metadata" % _key
|
193
|
+
)
|
194
|
+
_params[_key] = _val
|
195
|
+
del _params['kwargs']
|
196
|
+
|
197
|
+
_collection_formats = {}
|
198
|
+
|
199
|
+
# process the path parameters
|
200
|
+
_path_params = {}
|
201
|
+
|
202
|
+
# process the query parameters
|
203
|
+
_query_params = []
|
204
|
+
if _params.get('effective_at') is not None: # noqa: E501
|
205
|
+
_query_params.append(('effectiveAt', _params['effective_at']))
|
206
|
+
|
207
|
+
if _params.get('effective_until') is not None: # noqa: E501
|
208
|
+
if isinstance(_params['effective_until'], datetime):
|
209
|
+
_query_params.append(('effectiveUntil', _params['effective_until'].strftime(self.api_client.configuration.datetime_format)))
|
210
|
+
else:
|
211
|
+
_query_params.append(('effectiveUntil', _params['effective_until']))
|
212
|
+
|
213
|
+
# process the header parameters
|
214
|
+
_header_params = dict(_params.get('_headers', {}))
|
215
|
+
# process the form parameters
|
216
|
+
_form_params = []
|
217
|
+
_files = {}
|
218
|
+
# process the body parameter
|
219
|
+
_body_params = None
|
220
|
+
if _params['batch_upsert_portfolio_access_metadata_request'] is not None:
|
221
|
+
_body_params = _params['batch_upsert_portfolio_access_metadata_request']
|
222
|
+
|
223
|
+
# set the HTTP header `Accept`
|
224
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
225
|
+
['text/plain', 'application/json', 'text/json']) # noqa: E501
|
226
|
+
|
227
|
+
# set the HTTP header `Content-Type`
|
228
|
+
_content_types_list = _params.get('_content_type',
|
229
|
+
self.api_client.select_header_content_type(
|
230
|
+
['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
|
231
|
+
if _content_types_list:
|
232
|
+
_header_params['Content-Type'] = _content_types_list
|
233
|
+
|
234
|
+
# authentication setting
|
235
|
+
_auth_settings = ['oauth2'] # noqa: E501
|
236
|
+
|
237
|
+
_response_types_map = {
|
238
|
+
'200': "BatchUpsertPortfolioAccessMetadataResponse",
|
239
|
+
'400': "LusidValidationProblemDetails",
|
240
|
+
}
|
241
|
+
|
242
|
+
return self.api_client.call_api(
|
243
|
+
'/api/portfolios/metadata', 'PUT',
|
244
|
+
_path_params,
|
245
|
+
_query_params,
|
246
|
+
_header_params,
|
247
|
+
body=_body_params,
|
248
|
+
post_params=_form_params,
|
249
|
+
files=_files,
|
250
|
+
response_types_map=_response_types_map,
|
251
|
+
auth_settings=_auth_settings,
|
252
|
+
async_req=_params.get('async_req'),
|
253
|
+
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
254
|
+
_preload_content=_params.get('_preload_content', True),
|
255
|
+
_request_timeout=_params.get('_request_timeout'),
|
256
|
+
collection_formats=_collection_formats,
|
257
|
+
_request_auth=_params.get('_request_auth'))
|
258
|
+
|
80
259
|
@overload
|
81
260
|
async def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> DeletedEntityResponse: # noqa: E501
|
82
261
|
...
|
lusid/configuration.py
CHANGED
@@ -382,7 +382,7 @@ class Configuration:
|
|
382
382
|
return "Python SDK Debug Report:\n"\
|
383
383
|
"OS: {env}\n"\
|
384
384
|
"Python Version: {pyversion}\n"\
|
385
|
-
"Version of the API: 0.11.
|
385
|
+
"Version of the API: 0.11.6835\n"\
|
386
386
|
"SDK Package Version: {package_version}".\
|
387
387
|
format(env=sys.platform, pyversion=sys.version, package_version=package_version)
|
388
388
|
|