lusid-sdk 2.1.793__py3-none-any.whl → 2.1.795__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.
@@ -3715,15 +3715,15 @@ class TransactionPortfoliosApi:
3715
3715
 
3716
3716
 
3717
3717
  @overload
3718
- async def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, **kwargs) -> VersionedResourceListOfPortfolioHolding: # noqa: E501
3718
+ async def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, **kwargs) -> VersionedResourceListOfPortfolioHolding: # noqa: E501
3719
3719
  ...
3720
3720
 
3721
3721
  @overload
3722
- def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, async_req: Optional[bool]=True, **kwargs) -> VersionedResourceListOfPortfolioHolding: # noqa: E501
3722
+ def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, async_req: Optional[bool]=True, **kwargs) -> VersionedResourceListOfPortfolioHolding: # noqa: E501
3723
3723
  ...
3724
3724
 
3725
3725
  @validate_arguments
3726
- def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[VersionedResourceListOfPortfolioHolding, Awaitable[VersionedResourceListOfPortfolioHolding]]: # noqa: E501
3726
+ def get_holdings(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[VersionedResourceListOfPortfolioHolding, Awaitable[VersionedResourceListOfPortfolioHolding]]: # noqa: E501
3727
3727
  """GetHoldings: Get holdings # noqa: E501
3728
3728
 
3729
3729
  Calculate holdings for a transaction portfolio. # noqa: E501
@@ -3743,7 +3743,7 @@ class TransactionPortfoliosApi:
3743
3743
  :type as_at: datetime
3744
3744
  :param filter: Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3745
3745
  :type filter: str
3746
- :param property_keys: A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".
3746
+ :param property_keys: A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".
3747
3747
  :type property_keys: List[str]
3748
3748
  :param by_taxlots: Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.
3749
3749
  :type by_taxlots: bool
@@ -3768,7 +3768,7 @@ class TransactionPortfoliosApi:
3768
3768
  return self.get_holdings_with_http_info(scope, code, effective_at, as_at, filter, property_keys, by_taxlots, include_settlement_events_after_days, **kwargs) # noqa: E501
3769
3769
 
3770
3770
  @validate_arguments
3771
- def get_holdings_with_http_info(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, **kwargs) -> ApiResponse: # noqa: E501
3771
+ def get_holdings_with_http_info(self, scope : Annotated[StrictStr, Field(..., description="The scope of the transaction portfolio.")], code : Annotated[StrictStr, Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the holdings of the transaction portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the holdings of the transaction portfolio. Defaults to return the latest version if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".")] = None, by_taxlots : Annotated[Optional[StrictBool], Field(description="Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.")] = None, include_settlement_events_after_days : Annotated[Optional[StrictInt], Field(description="Number of days ahead to bring back settlements from, in relation to the specified effectiveAt")] = None, **kwargs) -> ApiResponse: # noqa: E501
3772
3772
  """GetHoldings: Get holdings # noqa: E501
3773
3773
 
3774
3774
  Calculate holdings for a transaction portfolio. # noqa: E501
@@ -3788,7 +3788,7 @@ class TransactionPortfoliosApi:
3788
3788
  :type as_at: datetime
3789
3789
  :param filter: Expression to filter the result set. For example, to filter on the Holding Type, use \"holdingType eq 'p'\". For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3790
3790
  :type filter: str
3791
- :param property_keys: A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".
3791
+ :param property_keys: A list of property keys from the \"Instrument\", \"Holding\", \"Custodian Account\", \"Legal Entity\" or \"Portfolio\" domain to decorate onto holdings. These must have the format {domain}/{scope}/{code}, for example \"Instrument/system/Name\" or \"Holding/system/Cost\".
3792
3792
  :type property_keys: List[str]
3793
3793
  :param by_taxlots: Whether or not to expand the holdings to return the underlying tax-lots. Defaults to False.
3794
3794
  :type by_taxlots: bool
lusid/configuration.py CHANGED
@@ -445,7 +445,7 @@ class Configuration:
445
445
  return "Python SDK Debug Report:\n"\
446
446
  "OS: {env}\n"\
447
447
  "Python Version: {pyversion}\n"\
448
- "Version of the API: 0.11.7787\n"\
448
+ "Version of the API: 0.11.7799\n"\
449
449
  "SDK Package Version: {package_version}".\
450
450
  format(env=sys.platform, pyversion=sys.version, package_version=package_version)
451
451
 
@@ -38,9 +38,10 @@ class PricingOptions(BaseModel):
38
38
  use_child_sub_holding_keys_for_portfolio_expansion: Optional[StrictBool] = Field(None, alias="useChildSubHoldingKeysForPortfolioExpansion", description="Should fund constituents inherit subholding keys from the parent subholding keyb")
39
39
  validate_domestic_and_quote_currencies_are_consistent: Optional[StrictBool] = Field(None, alias="validateDomesticAndQuoteCurrenciesAreConsistent", description="Do we validate that the instrument domestic currency matches the quote currency (unless unknown/zzz) when using lookup pricing.")
40
40
  mbs_valuation_using_holding_current_face: Optional[StrictBool] = Field(None, alias="mbsValuationUsingHoldingCurrentFace")
41
+ convert_srs_cash_flows_to_portfolio_currency: Optional[StrictBool] = Field(None, alias="convertSrsCashFlowsToPortfolioCurrency", description="In the case upserted structured result store (SRS) cashflows are not in the portfolio currency, set this parameter to True to convert said cashflows into the portfolio currency. By default, this flag is set to False and Lusid will not do any FX conversion. Please note that FX conversion is dependent on the data available in the quote store - ensure that all relevant FX quotes have been loaded for cashflow currency conversion.")
41
42
  conserved_quantity_for_lookthrough_expansion: Optional[StrictStr] = Field(None,alias="conservedQuantityForLookthroughExpansion", description="When performing lookthrough portfolio expansion with ScalingMethodology set to \"Sum\" or \"AbsoluteSum\", the quantity specified here will be conserved and apportioned to lookthrough constituents. For example, an equal-weighting index with 100 constituents can be modelled as a reference portfolio with 1% weights on each equity. When expanding a $9000 holding of that index into its constituents while conserving PV, we end up with $90 of each equity. The number of units of each equity held is then implied. Note that conservation of one quantity may imply non-conservation of others, especially when some constituents are OTCs. Allowed values are: \"PV\" (default), \"Exposure\".")
42
43
  return_zero_pv: Optional[ReturnZeroPvOptions] = Field(None, alias="returnZeroPv")
43
- __properties = ["modelSelection", "useInstrumentTypeToDeterminePricer", "allowAnyInstrumentsWithSecUidToPriceOffLookup", "allowPartiallySuccessfulEvaluation", "produceSeparateResultForLinearOtcLegs", "enableUseOfCachedUnitResults", "windowValuationOnInstrumentStartEnd", "removeContingentCashflowsInPaymentDiary", "useChildSubHoldingKeysForPortfolioExpansion", "validateDomesticAndQuoteCurrenciesAreConsistent", "mbsValuationUsingHoldingCurrentFace", "conservedQuantityForLookthroughExpansion", "returnZeroPv"]
44
+ __properties = ["modelSelection", "useInstrumentTypeToDeterminePricer", "allowAnyInstrumentsWithSecUidToPriceOffLookup", "allowPartiallySuccessfulEvaluation", "produceSeparateResultForLinearOtcLegs", "enableUseOfCachedUnitResults", "windowValuationOnInstrumentStartEnd", "removeContingentCashflowsInPaymentDiary", "useChildSubHoldingKeysForPortfolioExpansion", "validateDomesticAndQuoteCurrenciesAreConsistent", "mbsValuationUsingHoldingCurrentFace", "convertSrsCashFlowsToPortfolioCurrency", "conservedQuantityForLookthroughExpansion", "returnZeroPv"]
44
45
 
45
46
  class Config:
46
47
  """Pydantic configuration"""
@@ -108,6 +109,7 @@ class PricingOptions(BaseModel):
108
109
  "use_child_sub_holding_keys_for_portfolio_expansion": obj.get("useChildSubHoldingKeysForPortfolioExpansion"),
109
110
  "validate_domestic_and_quote_currencies_are_consistent": obj.get("validateDomesticAndQuoteCurrenciesAreConsistent"),
110
111
  "mbs_valuation_using_holding_current_face": obj.get("mbsValuationUsingHoldingCurrentFace"),
112
+ "convert_srs_cash_flows_to_portfolio_currency": obj.get("convertSrsCashFlowsToPortfolioCurrency"),
111
113
  "conserved_quantity_for_lookthrough_expansion": obj.get("conservedQuantityForLookthroughExpansion"),
112
114
  "return_zero_pv": ReturnZeroPvOptions.from_dict(obj.get("returnZeroPv")) if obj.get("returnZeroPv") is not None else None
113
115
  })
@@ -34,6 +34,7 @@ class StagedModification(BaseModel):
34
34
  as_at_staged: Optional[datetime] = Field(None, alias="asAtStaged", description="Time at which the modification was staged.")
35
35
  user_id_staged: Optional[StrictStr] = Field(None,alias="userIdStaged", description="Id of the user who created the stage modification request.")
36
36
  requested_id_staged: Optional[StrictStr] = Field(None,alias="requestedIdStaged", description="The Request Id that initiated this staged modification.")
37
+ request_reason: Optional[StrictStr] = Field(None,alias="requestReason", description="Reason staged change request made.")
37
38
  action: Optional[StrictStr] = Field(None,alias="action", description="Type of action of the staged modification, either create, update or delete.")
38
39
  staging_rule: Optional[StagedModificationStagingRule] = Field(None, alias="stagingRule")
39
40
  decisions: Optional[conlist(StagedModificationDecision)] = Field(None, description="Object containing information relating to the decision on the staged modification.")
@@ -47,7 +48,7 @@ class StagedModification(BaseModel):
47
48
  entity_hrefs: Optional[StagedModificationsEntityHrefs] = Field(None, alias="entityHrefs")
48
49
  display_name: Optional[StrictStr] = Field(None,alias="displayName", description="The display name of the entity the staged modification applies to.")
49
50
  links: Optional[conlist(Link)] = None
50
- __properties = ["id", "asAtStaged", "userIdStaged", "requestedIdStaged", "action", "stagingRule", "decisions", "decisionsCount", "status", "asAtClosed", "entityType", "scope", "entityUniqueId", "requestedChanges", "entityHrefs", "displayName", "links"]
51
+ __properties = ["id", "asAtStaged", "userIdStaged", "requestedIdStaged", "requestReason", "action", "stagingRule", "decisions", "decisionsCount", "status", "asAtClosed", "entityType", "scope", "entityUniqueId", "requestedChanges", "entityHrefs", "displayName", "links"]
51
52
 
52
53
  class Config:
53
54
  """Pydantic configuration"""
@@ -119,6 +120,11 @@ class StagedModification(BaseModel):
119
120
  if self.requested_id_staged is None and "requested_id_staged" in self.__fields_set__:
120
121
  _dict['requestedIdStaged'] = None
121
122
 
123
+ # set to None if request_reason (nullable) is None
124
+ # and __fields_set__ contains the field
125
+ if self.request_reason is None and "request_reason" in self.__fields_set__:
126
+ _dict['requestReason'] = None
127
+
122
128
  # set to None if action (nullable) is None
123
129
  # and __fields_set__ contains the field
124
130
  if self.action is None and "action" in self.__fields_set__:
@@ -180,6 +186,7 @@ class StagedModification(BaseModel):
180
186
  "as_at_staged": obj.get("asAtStaged"),
181
187
  "user_id_staged": obj.get("userIdStaged"),
182
188
  "requested_id_staged": obj.get("requestedIdStaged"),
189
+ "request_reason": obj.get("requestReason"),
183
190
  "action": obj.get("action"),
184
191
  "staging_rule": StagedModificationStagingRule.from_dict(obj.get("stagingRule")) if obj.get("stagingRule") is not None else None,
185
192
  "decisions": [StagedModificationDecision.from_dict(_item) for _item in obj.get("decisions")] if obj.get("decisions") is not None else None,
lusid/models/version.py CHANGED
@@ -30,13 +30,15 @@ class Version(BaseModel):
30
30
  as_at_created: Optional[datetime] = Field(None, alias="asAtCreated", description="The asAt datetime at which the entity was first created in LUSID.")
31
31
  user_id_created: Optional[StrictStr] = Field(None,alias="userIdCreated", description="The unique id of the user who created the entity.")
32
32
  request_id_created: Optional[StrictStr] = Field(None,alias="requestIdCreated", description="The unique request id of the command that created the entity.")
33
+ reason_created: Optional[StrictStr] = Field(None,alias="reasonCreated", description="The reason for an entity creation.")
33
34
  as_at_modified: Optional[datetime] = Field(None, alias="asAtModified", description="The asAt datetime at which the entity (including its properties) was last updated in LUSID.")
34
35
  user_id_modified: Optional[StrictStr] = Field(None,alias="userIdModified", description="The unique id of the user who last updated the entity (including its properties) in LUSID.")
35
36
  request_id_modified: Optional[StrictStr] = Field(None,alias="requestIdModified", description="The unique request id of the command that last updated the entity (including its properties) in LUSID.")
37
+ reason_modified: Optional[StrictStr] = Field(None,alias="reasonModified", description="The reason for an entity modification.")
36
38
  as_at_version_number: Optional[StrictInt] = Field(None, alias="asAtVersionNumber", description="The integer version number for the entity (the entity was created at version 1)")
37
39
  entity_unique_id: Optional[StrictStr] = Field(None,alias="entityUniqueId", description="The unique id of the entity")
38
40
  staged_modification_id_modified: Optional[StrictStr] = Field(None,alias="stagedModificationIdModified", description="The ID of the staged change that resulted in the most recent modification.")
39
- __properties = ["effectiveFrom", "asAtDate", "asAtCreated", "userIdCreated", "requestIdCreated", "asAtModified", "userIdModified", "requestIdModified", "asAtVersionNumber", "entityUniqueId", "stagedModificationIdModified"]
41
+ __properties = ["effectiveFrom", "asAtDate", "asAtCreated", "userIdCreated", "requestIdCreated", "reasonCreated", "asAtModified", "userIdModified", "requestIdModified", "reasonModified", "asAtVersionNumber", "entityUniqueId", "stagedModificationIdModified"]
40
42
 
41
43
  class Config:
42
44
  """Pydantic configuration"""
@@ -85,6 +87,11 @@ class Version(BaseModel):
85
87
  if self.request_id_created is None and "request_id_created" in self.__fields_set__:
86
88
  _dict['requestIdCreated'] = None
87
89
 
90
+ # set to None if reason_created (nullable) is None
91
+ # and __fields_set__ contains the field
92
+ if self.reason_created is None and "reason_created" in self.__fields_set__:
93
+ _dict['reasonCreated'] = None
94
+
88
95
  # set to None if as_at_modified (nullable) is None
89
96
  # and __fields_set__ contains the field
90
97
  if self.as_at_modified is None and "as_at_modified" in self.__fields_set__:
@@ -100,6 +107,11 @@ class Version(BaseModel):
100
107
  if self.request_id_modified is None and "request_id_modified" in self.__fields_set__:
101
108
  _dict['requestIdModified'] = None
102
109
 
110
+ # set to None if reason_modified (nullable) is None
111
+ # and __fields_set__ contains the field
112
+ if self.reason_modified is None and "reason_modified" in self.__fields_set__:
113
+ _dict['reasonModified'] = None
114
+
103
115
  # set to None if as_at_version_number (nullable) is None
104
116
  # and __fields_set__ contains the field
105
117
  if self.as_at_version_number is None and "as_at_version_number" in self.__fields_set__:
@@ -132,9 +144,11 @@ class Version(BaseModel):
132
144
  "as_at_created": obj.get("asAtCreated"),
133
145
  "user_id_created": obj.get("userIdCreated"),
134
146
  "request_id_created": obj.get("requestIdCreated"),
147
+ "reason_created": obj.get("reasonCreated"),
135
148
  "as_at_modified": obj.get("asAtModified"),
136
149
  "user_id_modified": obj.get("userIdModified"),
137
150
  "request_id_modified": obj.get("requestIdModified"),
151
+ "reason_modified": obj.get("reasonModified"),
138
152
  "as_at_version_number": obj.get("asAtVersionNumber"),
139
153
  "entity_unique_id": obj.get("entityUniqueId"),
140
154
  "staged_modification_id_modified": obj.get("stagedModificationIdModified")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lusid-sdk
3
- Version: 2.1.793
3
+ Version: 2.1.795
4
4
  Summary: LUSID API
5
5
  Home-page: https://github.com/finbourne/lusid-sdk-python
6
6
  License: MIT
@@ -71,12 +71,12 @@ lusid/api/tax_rule_sets_api.py,sha256=ia8zjTdwlgLGC8KDWFBT21agOrfWgn1zC_ik75mNDJ
71
71
  lusid/api/timelines_api.py,sha256=1Gsn61jN6WZ_OaggLKjfvkX8f1gjgazQaAnEd8z2B-g,99279
72
72
  lusid/api/transaction_configuration_api.py,sha256=OHs853-U1RWs2oApEO3raiMxixxiMQMcXu566qsm5v4,103968
73
73
  lusid/api/transaction_fees_api.py,sha256=r8Gl44-WYZebyJ_Uw2stLsf3-hPi1bK6Ij64Kx0L6A8,62698
74
- lusid/api/transaction_portfolios_api.py,sha256=ZaazyXK90EG7RRGbzWxV-bbDcb_Ulw9B6qEgedT0EBk,608525
74
+ lusid/api/transaction_portfolios_api.py,sha256=zUeIr5l_Zeh4LL7uHIcR7pxiRteqb-EHzk9Gsprmp8o,608633
75
75
  lusid/api/translation_api.py,sha256=xpRuTfwQvYBlWe6r_L2EI_uVpXqHFnEOim-i-kVQ85E,20227
76
76
  lusid/api/workspace_api.py,sha256=0pCNi3ZCRbIo0NXKa85XE7vtq0WV5YOKcQKvFlcLUaY,120708
77
77
  lusid/api_client.py,sha256=ewMTmf9SRurY8pYnUx9jy24RdldPCOa4US38pnrVxjA,31140
78
78
  lusid/api_response.py,sha256=6-gnhty6lu8MMAERt3_kTVD7UxQgWFfcjgpcq6iN5IU,855
79
- lusid/configuration.py,sha256=ROB1ctkeB9pyTKQ-IR50wb5pe2T-rnV-JLUP8d-coL4,17972
79
+ lusid/configuration.py,sha256=OCpQ7UexTPXpBrQWu5NKKkrpfT6GWxn214n6dX4oAx0,17972
80
80
  lusid/exceptions.py,sha256=HIQwgmQrszLlcVCLaqex8dO0laVuejUyOMz7U2ZWJ6s,5326
81
81
  lusid/extensions/__init__.py,sha256=dzDHEzpn-9smd2-_UMWQzeyX6Ha4jGf6fnqx7qxKxNI,630
82
82
  lusid/extensions/api_client.py,sha256=GzygWg_h603QK1QS2HvAijuE2R1TnvoF6-Yg0CeM3ug,30943
@@ -882,7 +882,7 @@ lusid/models/previous_nav.py,sha256=kZZrYY44Q0K03DQX7GX5HBdLJfIWBQ1nLaK7jR6pzwc,
882
882
  lusid/models/previous_share_class_breakdown.py,sha256=Q1szW58a2B5Awnj4jgjmflvlWE-zhzXuF3fXWH4SGks,3223
883
883
  lusid/models/pricing_context.py,sha256=cQRPDqxE5q3MB2ahV4zOpT3fIx8_MXRmkqjCb27He1o,8580
884
884
  lusid/models/pricing_model.py,sha256=HB-BQzn3dUQ5yJt7PqFTlYfTC9acenElFKNzwSBPjtk,1533
885
- lusid/models/pricing_options.py,sha256=IR87Gr2wQ5m2M9wZqGEODmpygZhEW4045vsIJgc_8SA,8959
885
+ lusid/models/pricing_options.py,sha256=ycvmbNUuMDcMCz7x0APcVLWqIhXNZ5ARg5kSiI7r8xs,9700
886
886
  lusid/models/processed_command.py,sha256=CqEkDhCprMS8DxwYCcTDdOx0ivoewyAipM-ThRllFyY,3215
887
887
  lusid/models/property_definition.py,sha256=8xnlJhsDa40DDzr5qX4hnbDpcWfp8DZWBNGdBjjgI-0,36327
888
888
  lusid/models/property_definition_entity.py,sha256=IVNodIOY6oqK66eb9m1Qd5lT1XlYqdLTgsPM6iCUFMo,8072
@@ -1091,7 +1091,7 @@ lusid/models/simple_rounding_convention.py,sha256=txqtrVhoOfgLx5zQKvPJPl1lUNOQ95
1091
1091
  lusid/models/sort_order.py,sha256=tx9hNHkrcdw2gQkSLTGQ-JED7cqZoFJ60abVdqkD-GM,644
1092
1092
  lusid/models/specific_holding_pricing_info.py,sha256=dSwywkW-7xLyDND_JDzHrDDEbVeDNQC8AuDM0iUWaeM,2957
1093
1093
  lusid/models/spin_off_event.py,sha256=SH7hBAhTJuFwW7x_-Jj3lLLe46iX3bfnEhKDmnVX9Do,14236
1094
- lusid/models/staged_modification.py,sha256=NNUCuTIyTFgM5fnQoRy8BK1kVq23SmOANpBBY9JY9Fc,9930
1094
+ lusid/models/staged_modification.py,sha256=0GZUKLm-ldAr0fZ9-KLz9ViJ3ccNIikgqz-2gPvVQPs,10365
1095
1095
  lusid/models/staged_modification_decision.py,sha256=zk12btetKfdNAq1Aj82s6-VY9c3MMnC-Vw7zn0CpBas,3815
1096
1096
  lusid/models/staged_modification_decision_request.py,sha256=qMkgnBlw1qPW6c3A_U9psULHGNI9DsFLOXf_Pb0lzCk,2462
1097
1097
  lusid/models/staged_modification_effective_range.py,sha256=gXJSL3pycrK18El2EQQFThQEg8NWDHZWASALLCxq0is,2534
@@ -1283,7 +1283,7 @@ lusid/models/value_type.py,sha256=jHK4tNBGG6VZsoUobxgcuY59JiMYF7YVSqu_tyYyL8U,12
1283
1283
  lusid/models/vendor_dependency.py,sha256=VImkKkwdwCdkSyEQyyWZjJXSRz7UN74L_8-pNDMqj74,7539
1284
1284
  lusid/models/vendor_library.py,sha256=Fx8zktN5UuefXUGb27Pgw-N3grsyVMvjOs_3Lw_S4Ow,812
1285
1285
  lusid/models/vendor_model_rule.py,sha256=mrFGaLbxV7bhUS8vkN5TrrhLK-UfaBCsEe2QkHgDui0,9434
1286
- lusid/models/version.py,sha256=d9vkzxEO-VpHGZwHFjUu1vwRxnSRwXRc8gK6d_Go_7k,6966
1286
+ lusid/models/version.py,sha256=gTV823BYpWW9lqYfNhJ0y_5DFq4hFu-82E-ah2fMXJQ,7849
1287
1287
  lusid/models/version_summary_dto.py,sha256=JKVMXnif1BJ1Nm6mGrlB86qDngVgb7r9XBgZ2j4FcM8,3819
1288
1288
  lusid/models/versioned_resource_list_of_a2_b_data_record.py,sha256=MWVA_LVigXy7vlalfRgHJqClL1fW1Vuahq6E5lRKAPk,4778
1289
1289
  lusid/models/versioned_resource_list_of_a2_b_movement_record.py,sha256=Xj2W6_meO0VL6xU_5HvlekkwpYuDr3KAOVPU2x_qHv0,4826
@@ -1313,6 +1313,6 @@ lusid/models/year_month_day.py,sha256=gwSoxFwlD_wffKdddo1wfvAcLq3Cht3FHQidiaHzAA
1313
1313
  lusid/models/yield_curve_data.py,sha256=I1ZSWxHMgUxj9OQt6i9a4S91KB4_XtmrfFxpN_PV3YQ,9561
1314
1314
  lusid/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1315
1315
  lusid/rest.py,sha256=HQT__5LQEMu6_1sLKvYj-DI4FH1DJXBIPYfZCTTyrY4,13431
1316
- lusid_sdk-2.1.793.dist-info/METADATA,sha256=c6hZ3WI9uwDiAZsnYEAo5KIpWZB_JJEjnbh93kz41-Q,220367
1317
- lusid_sdk-2.1.793.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1318
- lusid_sdk-2.1.793.dist-info/RECORD,,
1316
+ lusid_sdk-2.1.795.dist-info/METADATA,sha256=XnsS8Ka-z_QGWUOcEewDmVg3e00IJIA6tzclBSrZ4AA,220367
1317
+ lusid_sdk-2.1.795.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1318
+ lusid_sdk-2.1.795.dist-info/RECORD,,