lusid-sdk 2.1.988__py3-none-any.whl → 2.1.990__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of lusid-sdk might be problematic. Click here for more details.
- lusid/__init__.py +20 -0
- lusid/api/__init__.py +2 -0
- lusid/api/relational_datasets_api.py +450 -0
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +18 -0
- lusid/models/applicable_entity.py +105 -0
- lusid/models/batch_upsert_relational_datasets_response.py +132 -0
- lusid/models/create_derived_property_definition_request.py +3 -3
- lusid/models/create_identifier_definition_request.py +3 -3
- lusid/models/create_property_definition_request.py +3 -3
- lusid/models/flexible_repo.py +5 -3
- lusid/models/identifier_definition.py +3 -3
- lusid/models/loan_principal_repayment_event.py +5 -3
- lusid/models/paged_resource_list_of_relational_data_point_response.py +121 -0
- lusid/models/property_definition.py +3 -3
- lusid/models/property_definition_search_result.py +3 -3
- lusid/models/property_domain.py +1 -0
- lusid/models/query_relational_dataset_request.py +91 -0
- lusid/models/relational_data_point_field_value_response.py +82 -0
- lusid/models/relational_data_point_response.py +120 -0
- lusid/models/relational_data_series_response.py +98 -0
- lusid/models/settlement_instruction_request.py +18 -4
- lusid/models/transaction_settlement_instruction.py +21 -2
- lusid/models/upsert_relational_data_point_data_series.py +85 -0
- lusid/models/upsert_relational_data_point_request.py +92 -0
- {lusid_sdk-2.1.988.dist-info → lusid_sdk-2.1.990.dist-info}/METADATA +12 -1
- {lusid_sdk-2.1.988.dist-info → lusid_sdk-2.1.990.dist-info}/RECORD +28 -18
- {lusid_sdk-2.1.988.dist-info → lusid_sdk-2.1.990.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
LUSID API
|
|
5
|
+
|
|
6
|
+
FINBOURNE Technology # noqa: E501
|
|
7
|
+
|
|
8
|
+
Contact: info@finbourne.com
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Any, Dict, List, Optional
|
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist
|
|
23
|
+
from lusid.models.link import Link
|
|
24
|
+
from lusid.models.relational_data_point_response import RelationalDataPointResponse
|
|
25
|
+
|
|
26
|
+
class PagedResourceListOfRelationalDataPointResponse(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
PagedResourceListOfRelationalDataPointResponse
|
|
29
|
+
"""
|
|
30
|
+
next_page: Optional[StrictStr] = Field(None,alias="nextPage")
|
|
31
|
+
previous_page: Optional[StrictStr] = Field(None,alias="previousPage")
|
|
32
|
+
values: conlist(RelationalDataPointResponse) = Field(...)
|
|
33
|
+
href: Optional[StrictStr] = Field(None,alias="href")
|
|
34
|
+
links: Optional[conlist(Link)] = None
|
|
35
|
+
__properties = ["nextPage", "previousPage", "values", "href", "links"]
|
|
36
|
+
|
|
37
|
+
class Config:
|
|
38
|
+
"""Pydantic configuration"""
|
|
39
|
+
allow_population_by_field_name = True
|
|
40
|
+
validate_assignment = True
|
|
41
|
+
|
|
42
|
+
def __str__(self):
|
|
43
|
+
"""For `print` and `pprint`"""
|
|
44
|
+
return pprint.pformat(self.dict(by_alias=False))
|
|
45
|
+
|
|
46
|
+
def __repr__(self):
|
|
47
|
+
"""For `print` and `pprint`"""
|
|
48
|
+
return self.to_str()
|
|
49
|
+
|
|
50
|
+
def to_str(self) -> str:
|
|
51
|
+
"""Returns the string representation of the model using alias"""
|
|
52
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
53
|
+
|
|
54
|
+
def to_json(self) -> str:
|
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
|
56
|
+
return json.dumps(self.to_dict())
|
|
57
|
+
|
|
58
|
+
@classmethod
|
|
59
|
+
def from_json(cls, json_str: str) -> PagedResourceListOfRelationalDataPointResponse:
|
|
60
|
+
"""Create an instance of PagedResourceListOfRelationalDataPointResponse from a JSON string"""
|
|
61
|
+
return cls.from_dict(json.loads(json_str))
|
|
62
|
+
|
|
63
|
+
def to_dict(self):
|
|
64
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
65
|
+
_dict = self.dict(by_alias=True,
|
|
66
|
+
exclude={
|
|
67
|
+
},
|
|
68
|
+
exclude_none=True)
|
|
69
|
+
# override the default output from pydantic by calling `to_dict()` of each item in values (list)
|
|
70
|
+
_items = []
|
|
71
|
+
if self.values:
|
|
72
|
+
for _item in self.values:
|
|
73
|
+
if _item:
|
|
74
|
+
_items.append(_item.to_dict())
|
|
75
|
+
_dict['values'] = _items
|
|
76
|
+
# override the default output from pydantic by calling `to_dict()` of each item in links (list)
|
|
77
|
+
_items = []
|
|
78
|
+
if self.links:
|
|
79
|
+
for _item in self.links:
|
|
80
|
+
if _item:
|
|
81
|
+
_items.append(_item.to_dict())
|
|
82
|
+
_dict['links'] = _items
|
|
83
|
+
# set to None if next_page (nullable) is None
|
|
84
|
+
# and __fields_set__ contains the field
|
|
85
|
+
if self.next_page is None and "next_page" in self.__fields_set__:
|
|
86
|
+
_dict['nextPage'] = None
|
|
87
|
+
|
|
88
|
+
# set to None if previous_page (nullable) is None
|
|
89
|
+
# and __fields_set__ contains the field
|
|
90
|
+
if self.previous_page is None and "previous_page" in self.__fields_set__:
|
|
91
|
+
_dict['previousPage'] = None
|
|
92
|
+
|
|
93
|
+
# set to None if href (nullable) is None
|
|
94
|
+
# and __fields_set__ contains the field
|
|
95
|
+
if self.href is None and "href" in self.__fields_set__:
|
|
96
|
+
_dict['href'] = None
|
|
97
|
+
|
|
98
|
+
# set to None if links (nullable) is None
|
|
99
|
+
# and __fields_set__ contains the field
|
|
100
|
+
if self.links is None and "links" in self.__fields_set__:
|
|
101
|
+
_dict['links'] = None
|
|
102
|
+
|
|
103
|
+
return _dict
|
|
104
|
+
|
|
105
|
+
@classmethod
|
|
106
|
+
def from_dict(cls, obj: dict) -> PagedResourceListOfRelationalDataPointResponse:
|
|
107
|
+
"""Create an instance of PagedResourceListOfRelationalDataPointResponse from a dict"""
|
|
108
|
+
if obj is None:
|
|
109
|
+
return None
|
|
110
|
+
|
|
111
|
+
if not isinstance(obj, dict):
|
|
112
|
+
return PagedResourceListOfRelationalDataPointResponse.parse_obj(obj)
|
|
113
|
+
|
|
114
|
+
_obj = PagedResourceListOfRelationalDataPointResponse.parse_obj({
|
|
115
|
+
"next_page": obj.get("nextPage"),
|
|
116
|
+
"previous_page": obj.get("previousPage"),
|
|
117
|
+
"values": [RelationalDataPointResponse.from_dict(_item) for _item in obj.get("values")] if obj.get("values") is not None else None,
|
|
118
|
+
"href": obj.get("href"),
|
|
119
|
+
"links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
|
|
120
|
+
})
|
|
121
|
+
return _obj
|
|
@@ -37,7 +37,7 @@ class PropertyDefinition(BaseModel):
|
|
|
37
37
|
data_type_id: Optional[ResourceId] = Field(None, alias="dataTypeId")
|
|
38
38
|
type: Optional[StrictStr] = Field(None,alias="type", description="The type of the property. The available values are: Label, Metric, Information")
|
|
39
39
|
unit_schema: Optional[StrictStr] = Field(None,alias="unitSchema", description="The units that can be associated with the property's values. This is defined by the property's data type. The available values are: NoUnits, Basic, Iso4217Currency")
|
|
40
|
-
domain: Optional[StrictStr] = Field(None,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, CheckDefinition, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
|
40
|
+
domain: Optional[StrictStr] = Field(None,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, CheckDefinition, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition, SettlementInstruction")
|
|
41
41
|
scope: Optional[StrictStr] = Field(None,alias="scope", description="The scope that the property exists in.")
|
|
42
42
|
code: Optional[StrictStr] = Field(None,alias="code", description="The code of the property. Together with the domain and scope this uniquely identifies the property.")
|
|
43
43
|
value_required: Optional[StrictBool] = Field(None, alias="valueRequired", description="This field is not implemented and should be disregarded.")
|
|
@@ -307,8 +307,8 @@ class PropertyDefinition(BaseModel):
|
|
|
307
307
|
if value is None:
|
|
308
308
|
return value
|
|
309
309
|
|
|
310
|
-
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
|
311
|
-
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
|
310
|
+
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition', 'SettlementInstruction'):
|
|
311
|
+
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition', 'SettlementInstruction')")
|
|
312
312
|
return value
|
|
313
313
|
|
|
314
314
|
@validator('life_time')
|
|
@@ -34,7 +34,7 @@ class PropertyDefinitionSearchResult(BaseModel):
|
|
|
34
34
|
data_type_id: Optional[ResourceId] = Field(None, alias="dataTypeId")
|
|
35
35
|
type: Optional[StrictStr] = Field(None,alias="type", description="The type of the property. The available values are: Label, Metric, Information")
|
|
36
36
|
unit_schema: Optional[StrictStr] = Field(None,alias="unitSchema", description="The units that can be associated with the property's values. This is defined by the property's data type. The available values are: NoUnits, Basic, Iso4217Currency")
|
|
37
|
-
domain: Optional[StrictStr] = Field(None,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, CheckDefinition, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
|
37
|
+
domain: Optional[StrictStr] = Field(None,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, CheckDefinition, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition, SettlementInstruction")
|
|
38
38
|
scope: Optional[StrictStr] = Field(None,alias="scope", description="The scope that the property exists in.")
|
|
39
39
|
code: Optional[StrictStr] = Field(None,alias="code", description="The code of the property. Together with the domain and scope this uniquely identifies the property.")
|
|
40
40
|
value_required: Optional[StrictBool] = Field(None, alias="valueRequired", description="This field is not implemented and should be disregarded.")
|
|
@@ -299,8 +299,8 @@ class PropertyDefinitionSearchResult(BaseModel):
|
|
|
299
299
|
if value is None:
|
|
300
300
|
return value
|
|
301
301
|
|
|
302
|
-
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
|
303
|
-
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
|
302
|
+
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition', 'SettlementInstruction'):
|
|
303
|
+
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'CheckDefinition', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition', 'SettlementInstruction')")
|
|
304
304
|
return value
|
|
305
305
|
|
|
306
306
|
@validator('life_time')
|
lusid/models/property_domain.py
CHANGED
|
@@ -111,6 +111,7 @@ class PropertyDomain(str, Enum):
|
|
|
111
111
|
WORKER = 'Worker'
|
|
112
112
|
STAGINGRULESET = 'StagingRuleSet'
|
|
113
113
|
IDENTIFIERDEFINITION = 'IdentifierDefinition'
|
|
114
|
+
SETTLEMENTINSTRUCTION = 'SettlementInstruction'
|
|
114
115
|
|
|
115
116
|
@classmethod
|
|
116
117
|
def from_json(cls, json_str: str) -> PropertyDomain:
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
LUSID API
|
|
5
|
+
|
|
6
|
+
FINBOURNE Technology # noqa: E501
|
|
7
|
+
|
|
8
|
+
Contact: info@finbourne.com
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Any, Dict, List, Optional
|
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist, constr
|
|
23
|
+
|
|
24
|
+
class QueryRelationalDatasetRequest(BaseModel):
|
|
25
|
+
"""
|
|
26
|
+
QueryRelationalDatasetRequest
|
|
27
|
+
"""
|
|
28
|
+
query_method: StrictStr = Field(...,alias="queryMethod", description="The method used to query data points. Can be either 'Latest' or 'TimeSeries'.")
|
|
29
|
+
filter: Optional[StrictStr] = Field(None,alias="filter", description="Expression to filter the result set. For more information about filtering LUSID results, see https://support.lusid.com/knowledgebase/article/KA-01914.")
|
|
30
|
+
custom_sort_by: Optional[conlist(StrictStr)] = Field(None, alias="customSortBy", description="A list of fields to sort the results by. For example, to sort by a Value field 'AValueField' in descending order, specify 'AValueField DESC'.")
|
|
31
|
+
__properties = ["queryMethod", "filter", "customSortBy"]
|
|
32
|
+
|
|
33
|
+
class Config:
|
|
34
|
+
"""Pydantic configuration"""
|
|
35
|
+
allow_population_by_field_name = True
|
|
36
|
+
validate_assignment = True
|
|
37
|
+
|
|
38
|
+
def __str__(self):
|
|
39
|
+
"""For `print` and `pprint`"""
|
|
40
|
+
return pprint.pformat(self.dict(by_alias=False))
|
|
41
|
+
|
|
42
|
+
def __repr__(self):
|
|
43
|
+
"""For `print` and `pprint`"""
|
|
44
|
+
return self.to_str()
|
|
45
|
+
|
|
46
|
+
def to_str(self) -> str:
|
|
47
|
+
"""Returns the string representation of the model using alias"""
|
|
48
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
49
|
+
|
|
50
|
+
def to_json(self) -> str:
|
|
51
|
+
"""Returns the JSON representation of the model using alias"""
|
|
52
|
+
return json.dumps(self.to_dict())
|
|
53
|
+
|
|
54
|
+
@classmethod
|
|
55
|
+
def from_json(cls, json_str: str) -> QueryRelationalDatasetRequest:
|
|
56
|
+
"""Create an instance of QueryRelationalDatasetRequest from a JSON string"""
|
|
57
|
+
return cls.from_dict(json.loads(json_str))
|
|
58
|
+
|
|
59
|
+
def to_dict(self):
|
|
60
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
61
|
+
_dict = self.dict(by_alias=True,
|
|
62
|
+
exclude={
|
|
63
|
+
},
|
|
64
|
+
exclude_none=True)
|
|
65
|
+
# set to None if filter (nullable) is None
|
|
66
|
+
# and __fields_set__ contains the field
|
|
67
|
+
if self.filter is None and "filter" in self.__fields_set__:
|
|
68
|
+
_dict['filter'] = None
|
|
69
|
+
|
|
70
|
+
# set to None if custom_sort_by (nullable) is None
|
|
71
|
+
# and __fields_set__ contains the field
|
|
72
|
+
if self.custom_sort_by is None and "custom_sort_by" in self.__fields_set__:
|
|
73
|
+
_dict['customSortBy'] = None
|
|
74
|
+
|
|
75
|
+
return _dict
|
|
76
|
+
|
|
77
|
+
@classmethod
|
|
78
|
+
def from_dict(cls, obj: dict) -> QueryRelationalDatasetRequest:
|
|
79
|
+
"""Create an instance of QueryRelationalDatasetRequest from a dict"""
|
|
80
|
+
if obj is None:
|
|
81
|
+
return None
|
|
82
|
+
|
|
83
|
+
if not isinstance(obj, dict):
|
|
84
|
+
return QueryRelationalDatasetRequest.parse_obj(obj)
|
|
85
|
+
|
|
86
|
+
_obj = QueryRelationalDatasetRequest.parse_obj({
|
|
87
|
+
"query_method": obj.get("queryMethod"),
|
|
88
|
+
"filter": obj.get("filter"),
|
|
89
|
+
"custom_sort_by": obj.get("customSortBy")
|
|
90
|
+
})
|
|
91
|
+
return _obj
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
LUSID API
|
|
5
|
+
|
|
6
|
+
FINBOURNE Technology # noqa: E501
|
|
7
|
+
|
|
8
|
+
Contact: info@finbourne.com
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Any, Dict, Optional
|
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field
|
|
23
|
+
|
|
24
|
+
class RelationalDataPointFieldValueResponse(BaseModel):
|
|
25
|
+
"""
|
|
26
|
+
RelationalDataPointFieldValueResponse
|
|
27
|
+
"""
|
|
28
|
+
value: Optional[Any] = Field(..., description="The value of the field.")
|
|
29
|
+
__properties = ["value"]
|
|
30
|
+
|
|
31
|
+
class Config:
|
|
32
|
+
"""Pydantic configuration"""
|
|
33
|
+
allow_population_by_field_name = True
|
|
34
|
+
validate_assignment = True
|
|
35
|
+
|
|
36
|
+
def __str__(self):
|
|
37
|
+
"""For `print` and `pprint`"""
|
|
38
|
+
return pprint.pformat(self.dict(by_alias=False))
|
|
39
|
+
|
|
40
|
+
def __repr__(self):
|
|
41
|
+
"""For `print` and `pprint`"""
|
|
42
|
+
return self.to_str()
|
|
43
|
+
|
|
44
|
+
def to_str(self) -> str:
|
|
45
|
+
"""Returns the string representation of the model using alias"""
|
|
46
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
47
|
+
|
|
48
|
+
def to_json(self) -> str:
|
|
49
|
+
"""Returns the JSON representation of the model using alias"""
|
|
50
|
+
return json.dumps(self.to_dict())
|
|
51
|
+
|
|
52
|
+
@classmethod
|
|
53
|
+
def from_json(cls, json_str: str) -> RelationalDataPointFieldValueResponse:
|
|
54
|
+
"""Create an instance of RelationalDataPointFieldValueResponse from a JSON string"""
|
|
55
|
+
return cls.from_dict(json.loads(json_str))
|
|
56
|
+
|
|
57
|
+
def to_dict(self):
|
|
58
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
59
|
+
_dict = self.dict(by_alias=True,
|
|
60
|
+
exclude={
|
|
61
|
+
},
|
|
62
|
+
exclude_none=True)
|
|
63
|
+
# set to None if value (nullable) is None
|
|
64
|
+
# and __fields_set__ contains the field
|
|
65
|
+
if self.value is None and "value" in self.__fields_set__:
|
|
66
|
+
_dict['value'] = None
|
|
67
|
+
|
|
68
|
+
return _dict
|
|
69
|
+
|
|
70
|
+
@classmethod
|
|
71
|
+
def from_dict(cls, obj: dict) -> RelationalDataPointFieldValueResponse:
|
|
72
|
+
"""Create an instance of RelationalDataPointFieldValueResponse from a dict"""
|
|
73
|
+
if obj is None:
|
|
74
|
+
return None
|
|
75
|
+
|
|
76
|
+
if not isinstance(obj, dict):
|
|
77
|
+
return RelationalDataPointFieldValueResponse.parse_obj(obj)
|
|
78
|
+
|
|
79
|
+
_obj = RelationalDataPointFieldValueResponse.parse_obj({
|
|
80
|
+
"value": obj.get("value")
|
|
81
|
+
})
|
|
82
|
+
return _obj
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
LUSID API
|
|
5
|
+
|
|
6
|
+
FINBOURNE Technology # noqa: E501
|
|
7
|
+
|
|
8
|
+
Contact: info@finbourne.com
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from datetime import datetime
|
|
21
|
+
from typing import Any, Dict
|
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, constr
|
|
23
|
+
from lusid.models.relational_data_point_field_value_response import RelationalDataPointFieldValueResponse
|
|
24
|
+
from lusid.models.relational_data_series_response import RelationalDataSeriesResponse
|
|
25
|
+
from lusid.models.resource_id import ResourceId
|
|
26
|
+
|
|
27
|
+
class RelationalDataPointResponse(BaseModel):
|
|
28
|
+
"""
|
|
29
|
+
RelationalDataPointResponse
|
|
30
|
+
"""
|
|
31
|
+
relational_dataset_definition_id: ResourceId = Field(..., alias="relationalDatasetDefinitionId")
|
|
32
|
+
data_series: RelationalDataSeriesResponse = Field(..., alias="dataSeries")
|
|
33
|
+
effective_at: datetime = Field(..., alias="effectiveAt", description="The effectiveAt or cut-label datetime of the DataPoint.")
|
|
34
|
+
value_fields: Dict[str, RelationalDataPointFieldValueResponse] = Field(..., alias="valueFields", description="The values associated with the DataPoint, structured according to the FieldSchema of the parent RelationalDatasetDefinition.")
|
|
35
|
+
meta_data_fields: Dict[str, RelationalDataPointFieldValueResponse] = Field(..., alias="metaDataFields", description="The metadata associated with the DataPoint, structured according to the FieldSchema of the parent RelationalDatasetDefinition.")
|
|
36
|
+
effective_at_entered: StrictStr = Field(...,alias="effectiveAtEntered", description="The effectiveAt datetime as entered when the DataPoint was created.")
|
|
37
|
+
__properties = ["relationalDatasetDefinitionId", "dataSeries", "effectiveAt", "valueFields", "metaDataFields", "effectiveAtEntered"]
|
|
38
|
+
|
|
39
|
+
class Config:
|
|
40
|
+
"""Pydantic configuration"""
|
|
41
|
+
allow_population_by_field_name = True
|
|
42
|
+
validate_assignment = True
|
|
43
|
+
|
|
44
|
+
def __str__(self):
|
|
45
|
+
"""For `print` and `pprint`"""
|
|
46
|
+
return pprint.pformat(self.dict(by_alias=False))
|
|
47
|
+
|
|
48
|
+
def __repr__(self):
|
|
49
|
+
"""For `print` and `pprint`"""
|
|
50
|
+
return self.to_str()
|
|
51
|
+
|
|
52
|
+
def to_str(self) -> str:
|
|
53
|
+
"""Returns the string representation of the model using alias"""
|
|
54
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
55
|
+
|
|
56
|
+
def to_json(self) -> str:
|
|
57
|
+
"""Returns the JSON representation of the model using alias"""
|
|
58
|
+
return json.dumps(self.to_dict())
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_json(cls, json_str: str) -> RelationalDataPointResponse:
|
|
62
|
+
"""Create an instance of RelationalDataPointResponse from a JSON string"""
|
|
63
|
+
return cls.from_dict(json.loads(json_str))
|
|
64
|
+
|
|
65
|
+
def to_dict(self):
|
|
66
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
67
|
+
_dict = self.dict(by_alias=True,
|
|
68
|
+
exclude={
|
|
69
|
+
},
|
|
70
|
+
exclude_none=True)
|
|
71
|
+
# override the default output from pydantic by calling `to_dict()` of relational_dataset_definition_id
|
|
72
|
+
if self.relational_dataset_definition_id:
|
|
73
|
+
_dict['relationalDatasetDefinitionId'] = self.relational_dataset_definition_id.to_dict()
|
|
74
|
+
# override the default output from pydantic by calling `to_dict()` of data_series
|
|
75
|
+
if self.data_series:
|
|
76
|
+
_dict['dataSeries'] = self.data_series.to_dict()
|
|
77
|
+
# override the default output from pydantic by calling `to_dict()` of each value in value_fields (dict)
|
|
78
|
+
_field_dict = {}
|
|
79
|
+
if self.value_fields:
|
|
80
|
+
for _key in self.value_fields:
|
|
81
|
+
if self.value_fields[_key]:
|
|
82
|
+
_field_dict[_key] = self.value_fields[_key].to_dict()
|
|
83
|
+
_dict['valueFields'] = _field_dict
|
|
84
|
+
# override the default output from pydantic by calling `to_dict()` of each value in meta_data_fields (dict)
|
|
85
|
+
_field_dict = {}
|
|
86
|
+
if self.meta_data_fields:
|
|
87
|
+
for _key in self.meta_data_fields:
|
|
88
|
+
if self.meta_data_fields[_key]:
|
|
89
|
+
_field_dict[_key] = self.meta_data_fields[_key].to_dict()
|
|
90
|
+
_dict['metaDataFields'] = _field_dict
|
|
91
|
+
return _dict
|
|
92
|
+
|
|
93
|
+
@classmethod
|
|
94
|
+
def from_dict(cls, obj: dict) -> RelationalDataPointResponse:
|
|
95
|
+
"""Create an instance of RelationalDataPointResponse from a dict"""
|
|
96
|
+
if obj is None:
|
|
97
|
+
return None
|
|
98
|
+
|
|
99
|
+
if not isinstance(obj, dict):
|
|
100
|
+
return RelationalDataPointResponse.parse_obj(obj)
|
|
101
|
+
|
|
102
|
+
_obj = RelationalDataPointResponse.parse_obj({
|
|
103
|
+
"relational_dataset_definition_id": ResourceId.from_dict(obj.get("relationalDatasetDefinitionId")) if obj.get("relationalDatasetDefinitionId") is not None else None,
|
|
104
|
+
"data_series": RelationalDataSeriesResponse.from_dict(obj.get("dataSeries")) if obj.get("dataSeries") is not None else None,
|
|
105
|
+
"effective_at": obj.get("effectiveAt"),
|
|
106
|
+
"value_fields": dict(
|
|
107
|
+
(_k, RelationalDataPointFieldValueResponse.from_dict(_v))
|
|
108
|
+
for _k, _v in obj.get("valueFields").items()
|
|
109
|
+
)
|
|
110
|
+
if obj.get("valueFields") is not None
|
|
111
|
+
else None,
|
|
112
|
+
"meta_data_fields": dict(
|
|
113
|
+
(_k, RelationalDataPointFieldValueResponse.from_dict(_v))
|
|
114
|
+
for _k, _v in obj.get("metaDataFields").items()
|
|
115
|
+
)
|
|
116
|
+
if obj.get("metaDataFields") is not None
|
|
117
|
+
else None,
|
|
118
|
+
"effective_at_entered": obj.get("effectiveAtEntered")
|
|
119
|
+
})
|
|
120
|
+
return _obj
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
LUSID API
|
|
5
|
+
|
|
6
|
+
FINBOURNE Technology # noqa: E501
|
|
7
|
+
|
|
8
|
+
Contact: info@finbourne.com
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Any, Dict
|
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, constr
|
|
23
|
+
from lusid.models.applicable_entity import ApplicableEntity
|
|
24
|
+
from lusid.models.relational_data_point_field_value_response import RelationalDataPointFieldValueResponse
|
|
25
|
+
|
|
26
|
+
class RelationalDataSeriesResponse(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
RelationalDataSeriesResponse
|
|
29
|
+
"""
|
|
30
|
+
series_scope: StrictStr = Field(...,alias="seriesScope", description="The scope of the DataSeries.")
|
|
31
|
+
applicable_entity: ApplicableEntity = Field(..., alias="applicableEntity")
|
|
32
|
+
series_identifiers: Dict[str, RelationalDataPointFieldValueResponse] = Field(..., alias="seriesIdentifiers", description="The identifiers that uniquely define this DataSeries, structured according to the FieldSchema of the parent RelationalDatasetDefinition.")
|
|
33
|
+
__properties = ["seriesScope", "applicableEntity", "seriesIdentifiers"]
|
|
34
|
+
|
|
35
|
+
class Config:
|
|
36
|
+
"""Pydantic configuration"""
|
|
37
|
+
allow_population_by_field_name = True
|
|
38
|
+
validate_assignment = True
|
|
39
|
+
|
|
40
|
+
def __str__(self):
|
|
41
|
+
"""For `print` and `pprint`"""
|
|
42
|
+
return pprint.pformat(self.dict(by_alias=False))
|
|
43
|
+
|
|
44
|
+
def __repr__(self):
|
|
45
|
+
"""For `print` and `pprint`"""
|
|
46
|
+
return self.to_str()
|
|
47
|
+
|
|
48
|
+
def to_str(self) -> str:
|
|
49
|
+
"""Returns the string representation of the model using alias"""
|
|
50
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
51
|
+
|
|
52
|
+
def to_json(self) -> str:
|
|
53
|
+
"""Returns the JSON representation of the model using alias"""
|
|
54
|
+
return json.dumps(self.to_dict())
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_json(cls, json_str: str) -> RelationalDataSeriesResponse:
|
|
58
|
+
"""Create an instance of RelationalDataSeriesResponse from a JSON string"""
|
|
59
|
+
return cls.from_dict(json.loads(json_str))
|
|
60
|
+
|
|
61
|
+
def to_dict(self):
|
|
62
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
63
|
+
_dict = self.dict(by_alias=True,
|
|
64
|
+
exclude={
|
|
65
|
+
},
|
|
66
|
+
exclude_none=True)
|
|
67
|
+
# override the default output from pydantic by calling `to_dict()` of applicable_entity
|
|
68
|
+
if self.applicable_entity:
|
|
69
|
+
_dict['applicableEntity'] = self.applicable_entity.to_dict()
|
|
70
|
+
# override the default output from pydantic by calling `to_dict()` of each value in series_identifiers (dict)
|
|
71
|
+
_field_dict = {}
|
|
72
|
+
if self.series_identifiers:
|
|
73
|
+
for _key in self.series_identifiers:
|
|
74
|
+
if self.series_identifiers[_key]:
|
|
75
|
+
_field_dict[_key] = self.series_identifiers[_key].to_dict()
|
|
76
|
+
_dict['seriesIdentifiers'] = _field_dict
|
|
77
|
+
return _dict
|
|
78
|
+
|
|
79
|
+
@classmethod
|
|
80
|
+
def from_dict(cls, obj: dict) -> RelationalDataSeriesResponse:
|
|
81
|
+
"""Create an instance of RelationalDataSeriesResponse from a dict"""
|
|
82
|
+
if obj is None:
|
|
83
|
+
return None
|
|
84
|
+
|
|
85
|
+
if not isinstance(obj, dict):
|
|
86
|
+
return RelationalDataSeriesResponse.parse_obj(obj)
|
|
87
|
+
|
|
88
|
+
_obj = RelationalDataSeriesResponse.parse_obj({
|
|
89
|
+
"series_scope": obj.get("seriesScope"),
|
|
90
|
+
"applicable_entity": ApplicableEntity.from_dict(obj.get("applicableEntity")) if obj.get("applicableEntity") is not None else None,
|
|
91
|
+
"series_identifiers": dict(
|
|
92
|
+
(_k, RelationalDataPointFieldValueResponse.from_dict(_v))
|
|
93
|
+
for _k, _v in obj.get("seriesIdentifiers").items()
|
|
94
|
+
)
|
|
95
|
+
if obj.get("seriesIdentifiers") is not None
|
|
96
|
+
else None
|
|
97
|
+
})
|
|
98
|
+
return _obj
|