lusid-sdk 2.1.330__py3-none-any.whl → 2.1.336__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 +2 -0
- lusid/api/entities_api.py +172 -0
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +2 -0
- lusid/models/data_type.py +8 -8
- lusid/models/data_type_entity.py +131 -0
- lusid/models/journal_entry_line.py +5 -3
- lusid/models/share_class_details.py +5 -3
- {lusid_sdk-2.1.330.dist-info → lusid_sdk-2.1.336.dist-info}/METADATA +3 -1
- {lusid_sdk-2.1.330.dist-info → lusid_sdk-2.1.336.dist-info}/RECORD +11 -10
- {lusid_sdk-2.1.330.dist-info → lusid_sdk-2.1.336.dist-info}/WHEEL +0 -0
lusid/__init__.py
CHANGED
@@ -333,6 +333,7 @@ from lusid.models.data_map_key import DataMapKey
|
|
333
333
|
from lusid.models.data_mapping import DataMapping
|
334
334
|
from lusid.models.data_scope import DataScope
|
335
335
|
from lusid.models.data_type import DataType
|
336
|
+
from lusid.models.data_type_entity import DataTypeEntity
|
336
337
|
from lusid.models.data_type_summary import DataTypeSummary
|
337
338
|
from lusid.models.data_type_value_range import DataTypeValueRange
|
338
339
|
from lusid.models.date_attributes import DateAttributes
|
@@ -1444,6 +1445,7 @@ __all__ = [
|
|
1444
1445
|
"DataMapping",
|
1445
1446
|
"DataScope",
|
1446
1447
|
"DataType",
|
1448
|
+
"DataTypeEntity",
|
1447
1449
|
"DataTypeSummary",
|
1448
1450
|
"DataTypeValueRange",
|
1449
1451
|
"DateAttributes",
|
lusid/api/entities_api.py
CHANGED
@@ -26,6 +26,7 @@ from pydantic.v1 import Field, StrictStr, conlist, constr, validator
|
|
26
26
|
|
27
27
|
from typing import Optional
|
28
28
|
|
29
|
+
from lusid.models.data_type_entity import DataTypeEntity
|
29
30
|
from lusid.models.instrument_entity import InstrumentEntity
|
30
31
|
from lusid.models.portfolio_entity import PortfolioEntity
|
31
32
|
from lusid.models.property_definition_entity import PropertyDefinitionEntity
|
@@ -51,6 +52,177 @@ class EntitiesApi:
|
|
51
52
|
api_client = ApiClient.get_default()
|
52
53
|
self.api_client = api_client
|
53
54
|
|
55
|
+
@overload
|
56
|
+
async def get_data_type_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the DataType definition.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> DataTypeEntity: # noqa: E501
|
57
|
+
...
|
58
|
+
|
59
|
+
@overload
|
60
|
+
def get_data_type_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the DataType definition.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=True, **kwargs) -> DataTypeEntity: # noqa: E501
|
61
|
+
...
|
62
|
+
|
63
|
+
@validate_arguments
|
64
|
+
def get_data_type_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the DataType definition.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DataTypeEntity, Awaitable[DataTypeEntity]]: # noqa: E501
|
65
|
+
"""[EXPERIMENTAL] GetDataTypeByEntityUniqueId: Get DataType by EntityUniqueId # noqa: E501
|
66
|
+
|
67
|
+
Retrieve the definition of a particular DataType. If the DataType is deleted, this will return the state of the DataType immediately prior to deletion. # noqa: E501
|
68
|
+
This method makes a synchronous HTTP request by default. To make an
|
69
|
+
asynchronous HTTP request, please pass async_req=True
|
70
|
+
|
71
|
+
>>> thread = api.get_data_type_by_entity_unique_id(entity_unique_id, as_at, previews, async_req=True)
|
72
|
+
>>> result = thread.get()
|
73
|
+
|
74
|
+
:param entity_unique_id: The universally unique identifier of the DataType definition. (required)
|
75
|
+
:type entity_unique_id: str
|
76
|
+
:param as_at: The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.
|
77
|
+
:type as_at: datetime
|
78
|
+
:param previews: The ids of the staged modifications to be previewed in the response.
|
79
|
+
:type previews: List[str]
|
80
|
+
:param async_req: Whether to execute the request asynchronously.
|
81
|
+
:type async_req: bool, optional
|
82
|
+
:param _request_timeout: timeout setting for this request.
|
83
|
+
If one number provided, it will be total request
|
84
|
+
timeout. It can also be a pair (tuple) of
|
85
|
+
(connection, read) timeouts.
|
86
|
+
:return: Returns the result object.
|
87
|
+
If the method is called asynchronously,
|
88
|
+
returns the request thread.
|
89
|
+
:rtype: DataTypeEntity
|
90
|
+
"""
|
91
|
+
kwargs['_return_http_data_only'] = True
|
92
|
+
if '_preload_content' in kwargs:
|
93
|
+
message = "Error! Please call the get_data_type_by_entity_unique_id_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
94
|
+
raise ValueError(message)
|
95
|
+
if async_req is not None:
|
96
|
+
kwargs['async_req'] = async_req
|
97
|
+
return self.get_data_type_by_entity_unique_id_with_http_info(entity_unique_id, as_at, previews, **kwargs) # noqa: E501
|
98
|
+
|
99
|
+
@validate_arguments
|
100
|
+
def get_data_type_by_entity_unique_id_with_http_info(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the DataType definition.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
101
|
+
"""[EXPERIMENTAL] GetDataTypeByEntityUniqueId: Get DataType by EntityUniqueId # noqa: E501
|
102
|
+
|
103
|
+
Retrieve the definition of a particular DataType. If the DataType is deleted, this will return the state of the DataType immediately prior to deletion. # noqa: E501
|
104
|
+
This method makes a synchronous HTTP request by default. To make an
|
105
|
+
asynchronous HTTP request, please pass async_req=True
|
106
|
+
|
107
|
+
>>> thread = api.get_data_type_by_entity_unique_id_with_http_info(entity_unique_id, as_at, previews, async_req=True)
|
108
|
+
>>> result = thread.get()
|
109
|
+
|
110
|
+
:param entity_unique_id: The universally unique identifier of the DataType definition. (required)
|
111
|
+
:type entity_unique_id: str
|
112
|
+
:param as_at: The asAt datetime at which to retrieve the DataType definition. Defaults to returning the latest version of the DataType definition if not specified.
|
113
|
+
:type as_at: datetime
|
114
|
+
:param previews: The ids of the staged modifications to be previewed in the response.
|
115
|
+
:type previews: List[str]
|
116
|
+
:param async_req: Whether to execute the request asynchronously.
|
117
|
+
:type async_req: bool, optional
|
118
|
+
:param _preload_content: if False, the ApiResponse.data will
|
119
|
+
be set to none and raw_data will store the
|
120
|
+
HTTP response body without reading/decoding.
|
121
|
+
Default is True.
|
122
|
+
:type _preload_content: bool, optional
|
123
|
+
:param _return_http_data_only: response data instead of ApiResponse
|
124
|
+
object with status code, headers, etc
|
125
|
+
:type _return_http_data_only: bool, optional
|
126
|
+
:param _request_timeout: timeout setting for this request. If one
|
127
|
+
number provided, it will be total request
|
128
|
+
timeout. It can also be a pair (tuple) of
|
129
|
+
(connection, read) timeouts.
|
130
|
+
:param _request_auth: set to override the auth_settings for an a single
|
131
|
+
request; this effectively ignores the authentication
|
132
|
+
in the spec for a single request.
|
133
|
+
:type _request_auth: dict, optional
|
134
|
+
:type _content_type: string, optional: force content-type for the request
|
135
|
+
:return: Returns the result object.
|
136
|
+
If the method is called asynchronously,
|
137
|
+
returns the request thread.
|
138
|
+
:rtype: tuple(DataTypeEntity, status_code(int), headers(HTTPHeaderDict))
|
139
|
+
"""
|
140
|
+
|
141
|
+
_params = locals()
|
142
|
+
|
143
|
+
_all_params = [
|
144
|
+
'entity_unique_id',
|
145
|
+
'as_at',
|
146
|
+
'previews'
|
147
|
+
]
|
148
|
+
_all_params.extend(
|
149
|
+
[
|
150
|
+
'async_req',
|
151
|
+
'_return_http_data_only',
|
152
|
+
'_preload_content',
|
153
|
+
'_request_timeout',
|
154
|
+
'_request_auth',
|
155
|
+
'_content_type',
|
156
|
+
'_headers'
|
157
|
+
]
|
158
|
+
)
|
159
|
+
|
160
|
+
# validate the arguments
|
161
|
+
for _key, _val in _params['kwargs'].items():
|
162
|
+
if _key not in _all_params:
|
163
|
+
raise ApiTypeError(
|
164
|
+
"Got an unexpected keyword argument '%s'"
|
165
|
+
" to method get_data_type_by_entity_unique_id" % _key
|
166
|
+
)
|
167
|
+
_params[_key] = _val
|
168
|
+
del _params['kwargs']
|
169
|
+
|
170
|
+
_collection_formats = {}
|
171
|
+
|
172
|
+
# process the path parameters
|
173
|
+
_path_params = {}
|
174
|
+
if _params['entity_unique_id']:
|
175
|
+
_path_params['entityUniqueId'] = _params['entity_unique_id']
|
176
|
+
|
177
|
+
|
178
|
+
# process the query parameters
|
179
|
+
_query_params = []
|
180
|
+
if _params.get('as_at') is not None: # noqa: E501
|
181
|
+
if isinstance(_params['as_at'], datetime):
|
182
|
+
_query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
|
183
|
+
else:
|
184
|
+
_query_params.append(('asAt', _params['as_at']))
|
185
|
+
|
186
|
+
if _params.get('previews') is not None: # noqa: E501
|
187
|
+
_query_params.append(('previews', _params['previews']))
|
188
|
+
_collection_formats['previews'] = 'multi'
|
189
|
+
|
190
|
+
# process the header parameters
|
191
|
+
_header_params = dict(_params.get('_headers', {}))
|
192
|
+
# process the form parameters
|
193
|
+
_form_params = []
|
194
|
+
_files = {}
|
195
|
+
# process the body parameter
|
196
|
+
_body_params = None
|
197
|
+
# set the HTTP header `Accept`
|
198
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
199
|
+
['text/plain', 'application/json', 'text/json']) # noqa: E501
|
200
|
+
|
201
|
+
# authentication setting
|
202
|
+
_auth_settings = ['oauth2'] # noqa: E501
|
203
|
+
|
204
|
+
_response_types_map = {
|
205
|
+
'200': "DataTypeEntity",
|
206
|
+
'400': "LusidValidationProblemDetails",
|
207
|
+
}
|
208
|
+
|
209
|
+
return self.api_client.call_api(
|
210
|
+
'/api/entities/datatypes/{entityUniqueId}', 'GET',
|
211
|
+
_path_params,
|
212
|
+
_query_params,
|
213
|
+
_header_params,
|
214
|
+
body=_body_params,
|
215
|
+
post_params=_form_params,
|
216
|
+
files=_files,
|
217
|
+
response_types_map=_response_types_map,
|
218
|
+
auth_settings=_auth_settings,
|
219
|
+
async_req=_params.get('async_req'),
|
220
|
+
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
221
|
+
_preload_content=_params.get('_preload_content', True),
|
222
|
+
_request_timeout=_params.get('_request_timeout'),
|
223
|
+
collection_formats=_collection_formats,
|
224
|
+
_request_auth=_params.get('_request_auth'))
|
225
|
+
|
54
226
|
@overload
|
55
227
|
async def get_instrument_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the instrument definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the Instrument definition. 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 instrument definition. Defaults to returning the latest version of the instrument definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> InstrumentEntity: # noqa: E501
|
56
228
|
...
|
lusid/configuration.py
CHANGED
@@ -373,7 +373,7 @@ class Configuration:
|
|
373
373
|
return "Python SDK Debug Report:\n"\
|
374
374
|
"OS: {env}\n"\
|
375
375
|
"Python Version: {pyversion}\n"\
|
376
|
-
"Version of the API: 0.11.
|
376
|
+
"Version of the API: 0.11.6767\n"\
|
377
377
|
"SDK Package Version: {package_version}".\
|
378
378
|
format(env=sys.platform, pyversion=sys.version, package_version=package_version)
|
379
379
|
|
lusid/models/__init__.py
CHANGED
@@ -254,6 +254,7 @@ from lusid.models.data_map_key import DataMapKey
|
|
254
254
|
from lusid.models.data_mapping import DataMapping
|
255
255
|
from lusid.models.data_scope import DataScope
|
256
256
|
from lusid.models.data_type import DataType
|
257
|
+
from lusid.models.data_type_entity import DataTypeEntity
|
257
258
|
from lusid.models.data_type_summary import DataTypeSummary
|
258
259
|
from lusid.models.data_type_value_range import DataTypeValueRange
|
259
260
|
from lusid.models.date_attributes import DateAttributes
|
@@ -1287,6 +1288,7 @@ __all__ = [
|
|
1287
1288
|
"DataMapping",
|
1288
1289
|
"DataScope",
|
1289
1290
|
"DataType",
|
1291
|
+
"DataTypeEntity",
|
1290
1292
|
"DataTypeSummary",
|
1291
1293
|
"DataTypeValueRange",
|
1292
1294
|
"DateAttributes",
|
lusid/models/data_type.py
CHANGED
@@ -30,7 +30,6 @@ class DataType(BaseModel):
|
|
30
30
|
"""
|
31
31
|
DataType
|
32
32
|
"""
|
33
|
-
href: Optional[StrictStr] = None
|
34
33
|
type_value_range: StrictStr = Field(..., alias="typeValueRange", description="The available values are: Open, Closed")
|
35
34
|
id: ResourceId = Field(...)
|
36
35
|
display_name: constr(strict=True, min_length=1) = Field(..., alias="displayName")
|
@@ -41,8 +40,9 @@ class DataType(BaseModel):
|
|
41
40
|
acceptable_units: Optional[conlist(IUnitDefinitionDto)] = Field(None, alias="acceptableUnits")
|
42
41
|
reference_data: Optional[ReferenceData] = Field(None, alias="referenceData")
|
43
42
|
version: Optional[Version] = None
|
43
|
+
href: Optional[StrictStr] = Field(None, description="The specific Uniform Resource Identifier (URI) for this resource at the requested effective and asAt datetime.")
|
44
44
|
links: Optional[conlist(Link)] = None
|
45
|
-
__properties = ["
|
45
|
+
__properties = ["typeValueRange", "id", "displayName", "description", "valueType", "acceptableValues", "unitSchema", "acceptableUnits", "referenceData", "version", "href", "links"]
|
46
46
|
|
47
47
|
@validator('type_value_range')
|
48
48
|
def type_value_range_validate_enum(cls, value):
|
@@ -115,11 +115,6 @@ class DataType(BaseModel):
|
|
115
115
|
if _item:
|
116
116
|
_items.append(_item.to_dict())
|
117
117
|
_dict['links'] = _items
|
118
|
-
# set to None if href (nullable) is None
|
119
|
-
# and __fields_set__ contains the field
|
120
|
-
if self.href is None and "href" in self.__fields_set__:
|
121
|
-
_dict['href'] = None
|
122
|
-
|
123
118
|
# set to None if acceptable_values (nullable) is None
|
124
119
|
# and __fields_set__ contains the field
|
125
120
|
if self.acceptable_values is None and "acceptable_values" in self.__fields_set__:
|
@@ -130,6 +125,11 @@ class DataType(BaseModel):
|
|
130
125
|
if self.acceptable_units is None and "acceptable_units" in self.__fields_set__:
|
131
126
|
_dict['acceptableUnits'] = None
|
132
127
|
|
128
|
+
# set to None if href (nullable) is None
|
129
|
+
# and __fields_set__ contains the field
|
130
|
+
if self.href is None and "href" in self.__fields_set__:
|
131
|
+
_dict['href'] = None
|
132
|
+
|
133
133
|
# set to None if links (nullable) is None
|
134
134
|
# and __fields_set__ contains the field
|
135
135
|
if self.links is None and "links" in self.__fields_set__:
|
@@ -147,7 +147,6 @@ class DataType(BaseModel):
|
|
147
147
|
return DataType.parse_obj(obj)
|
148
148
|
|
149
149
|
_obj = DataType.parse_obj({
|
150
|
-
"href": obj.get("href"),
|
151
150
|
"type_value_range": obj.get("typeValueRange"),
|
152
151
|
"id": ResourceId.from_dict(obj.get("id")) if obj.get("id") is not None else None,
|
153
152
|
"display_name": obj.get("displayName"),
|
@@ -158,6 +157,7 @@ class DataType(BaseModel):
|
|
158
157
|
"acceptable_units": [IUnitDefinitionDto.from_dict(_item) for _item in obj.get("acceptableUnits")] if obj.get("acceptableUnits") is not None else None,
|
159
158
|
"reference_data": ReferenceData.from_dict(obj.get("referenceData")) if obj.get("referenceData") is not None else None,
|
160
159
|
"version": Version.from_dict(obj.get("version")) if obj.get("version") is not None else None,
|
160
|
+
"href": obj.get("href"),
|
161
161
|
"links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
|
162
162
|
})
|
163
163
|
return _obj
|
@@ -0,0 +1,131 @@
|
|
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, Optional
|
22
|
+
from pydantic.v1 import BaseModel, Field, StrictInt, StrictStr, constr
|
23
|
+
from lusid.models.data_type import DataType
|
24
|
+
|
25
|
+
class DataTypeEntity(BaseModel):
|
26
|
+
"""
|
27
|
+
DataTypeEntity
|
28
|
+
"""
|
29
|
+
href: StrictStr = Field(..., description="The specific Uniform Resource Identifier (URI) for this resource at the requested effective and asAt datetime.")
|
30
|
+
entity_unique_id: constr(strict=True, min_length=1) = Field(..., alias="entityUniqueId", description="The unique id of the entity.")
|
31
|
+
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)")
|
32
|
+
status: constr(strict=True, min_length=1) = Field(..., description="The status of the entity at the current time.")
|
33
|
+
as_at_deleted: Optional[datetime] = Field(None, alias="asAtDeleted", description="The asAt datetime at which the entity was deleted.")
|
34
|
+
user_id_deleted: Optional[StrictStr] = Field(None, alias="userIdDeleted", description="The unique id of the user who deleted the entity.")
|
35
|
+
request_id_deleted: Optional[StrictStr] = Field(None, alias="requestIdDeleted", description="The unique request id of the command that deleted the entity.")
|
36
|
+
effective_at_created: Optional[datetime] = Field(None, alias="effectiveAtCreated", description="The EffectiveAt this Entity is created, if entity does not currently exist in EffectiveAt.")
|
37
|
+
prevailing_data_type: Optional[DataType] = Field(None, alias="prevailingDataType")
|
38
|
+
deleted_data_type: Optional[DataType] = Field(None, alias="deletedDataType")
|
39
|
+
previewed_status: Optional[StrictStr] = Field(None, alias="previewedStatus", description="The status of the previewed entity.")
|
40
|
+
previewed_data_type: Optional[DataType] = Field(None, alias="previewedDataType")
|
41
|
+
__properties = ["href", "entityUniqueId", "asAtVersionNumber", "status", "asAtDeleted", "userIdDeleted", "requestIdDeleted", "effectiveAtCreated", "prevailingDataType", "deletedDataType", "previewedStatus", "previewedDataType"]
|
42
|
+
|
43
|
+
class Config:
|
44
|
+
"""Pydantic configuration"""
|
45
|
+
allow_population_by_field_name = True
|
46
|
+
validate_assignment = True
|
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) -> DataTypeEntity:
|
58
|
+
"""Create an instance of DataTypeEntity 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 prevailing_data_type
|
68
|
+
if self.prevailing_data_type:
|
69
|
+
_dict['prevailingDataType'] = self.prevailing_data_type.to_dict()
|
70
|
+
# override the default output from pydantic by calling `to_dict()` of deleted_data_type
|
71
|
+
if self.deleted_data_type:
|
72
|
+
_dict['deletedDataType'] = self.deleted_data_type.to_dict()
|
73
|
+
# override the default output from pydantic by calling `to_dict()` of previewed_data_type
|
74
|
+
if self.previewed_data_type:
|
75
|
+
_dict['previewedDataType'] = self.previewed_data_type.to_dict()
|
76
|
+
# set to None if as_at_version_number (nullable) is None
|
77
|
+
# and __fields_set__ contains the field
|
78
|
+
if self.as_at_version_number is None and "as_at_version_number" in self.__fields_set__:
|
79
|
+
_dict['asAtVersionNumber'] = None
|
80
|
+
|
81
|
+
# set to None if as_at_deleted (nullable) is None
|
82
|
+
# and __fields_set__ contains the field
|
83
|
+
if self.as_at_deleted is None and "as_at_deleted" in self.__fields_set__:
|
84
|
+
_dict['asAtDeleted'] = None
|
85
|
+
|
86
|
+
# set to None if user_id_deleted (nullable) is None
|
87
|
+
# and __fields_set__ contains the field
|
88
|
+
if self.user_id_deleted is None and "user_id_deleted" in self.__fields_set__:
|
89
|
+
_dict['userIdDeleted'] = None
|
90
|
+
|
91
|
+
# set to None if request_id_deleted (nullable) is None
|
92
|
+
# and __fields_set__ contains the field
|
93
|
+
if self.request_id_deleted is None and "request_id_deleted" in self.__fields_set__:
|
94
|
+
_dict['requestIdDeleted'] = None
|
95
|
+
|
96
|
+
# set to None if effective_at_created (nullable) is None
|
97
|
+
# and __fields_set__ contains the field
|
98
|
+
if self.effective_at_created is None and "effective_at_created" in self.__fields_set__:
|
99
|
+
_dict['effectiveAtCreated'] = None
|
100
|
+
|
101
|
+
# set to None if previewed_status (nullable) is None
|
102
|
+
# and __fields_set__ contains the field
|
103
|
+
if self.previewed_status is None and "previewed_status" in self.__fields_set__:
|
104
|
+
_dict['previewedStatus'] = None
|
105
|
+
|
106
|
+
return _dict
|
107
|
+
|
108
|
+
@classmethod
|
109
|
+
def from_dict(cls, obj: dict) -> DataTypeEntity:
|
110
|
+
"""Create an instance of DataTypeEntity from a dict"""
|
111
|
+
if obj is None:
|
112
|
+
return None
|
113
|
+
|
114
|
+
if not isinstance(obj, dict):
|
115
|
+
return DataTypeEntity.parse_obj(obj)
|
116
|
+
|
117
|
+
_obj = DataTypeEntity.parse_obj({
|
118
|
+
"href": obj.get("href"),
|
119
|
+
"entity_unique_id": obj.get("entityUniqueId"),
|
120
|
+
"as_at_version_number": obj.get("asAtVersionNumber"),
|
121
|
+
"status": obj.get("status"),
|
122
|
+
"as_at_deleted": obj.get("asAtDeleted"),
|
123
|
+
"user_id_deleted": obj.get("userIdDeleted"),
|
124
|
+
"request_id_deleted": obj.get("requestIdDeleted"),
|
125
|
+
"effective_at_created": obj.get("effectiveAtCreated"),
|
126
|
+
"prevailing_data_type": DataType.from_dict(obj.get("prevailingDataType")) if obj.get("prevailingDataType") is not None else None,
|
127
|
+
"deleted_data_type": DataType.from_dict(obj.get("deletedDataType")) if obj.get("deletedDataType") is not None else None,
|
128
|
+
"previewed_status": obj.get("previewedStatus"),
|
129
|
+
"previewed_data_type": DataType.from_dict(obj.get("previewedDataType")) if obj.get("previewedDataType") is not None else None
|
130
|
+
})
|
131
|
+
return _obj
|
@@ -18,8 +18,8 @@ import re # noqa: F401
|
|
18
18
|
import json
|
19
19
|
|
20
20
|
from datetime import datetime
|
21
|
-
from typing import Any, Dict, List, Optional
|
22
|
-
from pydantic.v1 import BaseModel, Field, StrictStr, conlist, constr
|
21
|
+
from typing import Any, Dict, List, Optional, Union
|
22
|
+
from pydantic.v1 import BaseModel, Field, StrictFloat, StrictInt, StrictStr, conlist, constr
|
23
23
|
from lusid.models.currency_and_amount import CurrencyAndAmount
|
24
24
|
from lusid.models.link import Link
|
25
25
|
from lusid.models.model_property import ModelProperty
|
@@ -40,6 +40,7 @@ class JournalEntryLine(BaseModel):
|
|
40
40
|
general_ledger_account_code: constr(strict=True, min_length=1) = Field(..., alias="generalLedgerAccountCode", description="The code of the account in the general ledger the Journal Entry was posted to.")
|
41
41
|
local: CurrencyAndAmount = Field(...)
|
42
42
|
base: CurrencyAndAmount = Field(...)
|
43
|
+
units: Union[StrictFloat, StrictInt] = Field(..., description="Units held for the Journal Entry Line.")
|
43
44
|
posting_module_code: Optional[StrictStr] = Field(None, alias="postingModuleCode", description="The code of the posting module where the posting rules derived the Journal Entry lines.")
|
44
45
|
posting_rule: constr(strict=True, min_length=1) = Field(..., alias="postingRule", description="The rule generating the Journal Entry Line.")
|
45
46
|
as_at_date: datetime = Field(..., alias="asAtDate", description="The corresponding input date and time of the Transaction generating the Journal Entry Line.")
|
@@ -58,7 +59,7 @@ class JournalEntryLine(BaseModel):
|
|
58
59
|
ledger_column: Optional[StrictStr] = Field(None, alias="ledgerColumn", description="Indicates if the Journal Entry Line is credit or debit.")
|
59
60
|
journal_entry_line_type: Optional[StrictStr] = Field(None, alias="journalEntryLineType", description="Indicates the Journal Entry Line type")
|
60
61
|
links: Optional[conlist(Link)] = None
|
61
|
-
__properties = ["accountingDate", "activityDate", "portfolioId", "instrumentId", "instrumentScope", "subHoldingKeys", "taxLotId", "generalLedgerAccountCode", "local", "base", "postingModuleCode", "postingRule", "asAtDate", "activitiesDescription", "sourceType", "sourceId", "properties", "movementName", "holdingType", "economicBucket", "economicBucketComponent", "levels", "sourceLevels", "movementSign", "holdingSign", "ledgerColumn", "journalEntryLineType", "links"]
|
62
|
+
__properties = ["accountingDate", "activityDate", "portfolioId", "instrumentId", "instrumentScope", "subHoldingKeys", "taxLotId", "generalLedgerAccountCode", "local", "base", "units", "postingModuleCode", "postingRule", "asAtDate", "activitiesDescription", "sourceType", "sourceId", "properties", "movementName", "holdingType", "economicBucket", "economicBucketComponent", "levels", "sourceLevels", "movementSign", "holdingSign", "ledgerColumn", "journalEntryLineType", "links"]
|
62
63
|
|
63
64
|
class Config:
|
64
65
|
"""Pydantic configuration"""
|
@@ -211,6 +212,7 @@ class JournalEntryLine(BaseModel):
|
|
211
212
|
"general_ledger_account_code": obj.get("generalLedgerAccountCode"),
|
212
213
|
"local": CurrencyAndAmount.from_dict(obj.get("local")) if obj.get("local") is not None else None,
|
213
214
|
"base": CurrencyAndAmount.from_dict(obj.get("base")) if obj.get("base") is not None else None,
|
215
|
+
"units": obj.get("units"),
|
214
216
|
"posting_module_code": obj.get("postingModuleCode"),
|
215
217
|
"posting_rule": obj.get("postingRule"),
|
216
218
|
"as_at_date": obj.get("asAtDate"),
|
@@ -19,7 +19,7 @@ import json
|
|
19
19
|
|
20
20
|
|
21
21
|
from typing import Any, Dict, Optional
|
22
|
-
from pydantic.v1 import BaseModel, Field, StrictStr, constr, validator
|
22
|
+
from pydantic.v1 import BaseModel, Field, StrictBool, StrictStr, constr, validator
|
23
23
|
|
24
24
|
class ShareClassDetails(BaseModel):
|
25
25
|
"""
|
@@ -28,7 +28,8 @@ class ShareClassDetails(BaseModel):
|
|
28
28
|
lusid_instrument_id: Optional[constr(strict=True, max_length=64, min_length=1)] = Field(None, alias="lusidInstrumentId", description="LUSID's internal unique instrument identifier, resolved from the share class' instrument identifiers")
|
29
29
|
instrument_scope: Optional[constr(strict=True, max_length=64, min_length=1)] = Field(None, alias="instrumentScope", description="The scope in which the share class instrument lies.")
|
30
30
|
dom_currency: Optional[StrictStr] = Field(None, alias="domCurrency", description="The domestic currency of the share class instrument")
|
31
|
-
|
31
|
+
instrument_active: Optional[StrictBool] = Field(None, alias="instrumentActive", description="If the instrument of the share class is active.")
|
32
|
+
__properties = ["lusidInstrumentId", "instrumentScope", "domCurrency", "instrumentActive"]
|
32
33
|
|
33
34
|
@validator('lusid_instrument_id')
|
34
35
|
def lusid_instrument_id_validate_regular_expression(cls, value):
|
@@ -103,6 +104,7 @@ class ShareClassDetails(BaseModel):
|
|
103
104
|
_obj = ShareClassDetails.parse_obj({
|
104
105
|
"lusid_instrument_id": obj.get("lusidInstrumentId"),
|
105
106
|
"instrument_scope": obj.get("instrumentScope"),
|
106
|
-
"dom_currency": obj.get("domCurrency")
|
107
|
+
"dom_currency": obj.get("domCurrency"),
|
108
|
+
"instrument_active": obj.get("instrumentActive")
|
107
109
|
})
|
108
110
|
return _obj
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lusid-sdk
|
3
|
-
Version: 2.1.
|
3
|
+
Version: 2.1.336
|
4
4
|
Summary: LUSID API
|
5
5
|
Home-page: https://github.com/finbourne/lusid-sdk-python
|
6
6
|
License: MIT
|
@@ -208,6 +208,7 @@ Class | Method | HTTP request | Description
|
|
208
208
|
*DataTypesApi* | [**update_reference_values**](docs/DataTypesApi.md#update_reference_values) | **PUT** /api/datatypes/{scope}/{code}/referencedatavalues | [EARLY ACCESS] UpdateReferenceValues: Update reference data on a data type
|
209
209
|
*DerivedTransactionPortfoliosApi* | [**create_derived_portfolio**](docs/DerivedTransactionPortfoliosApi.md#create_derived_portfolio) | **POST** /api/derivedtransactionportfolios/{scope} | CreateDerivedPortfolio: Create derived portfolio
|
210
210
|
*DerivedTransactionPortfoliosApi* | [**delete_derived_portfolio_details**](docs/DerivedTransactionPortfoliosApi.md#delete_derived_portfolio_details) | **DELETE** /api/derivedtransactionportfolios/{scope}/{code}/details | [EARLY ACCESS] DeleteDerivedPortfolioDetails: Delete derived portfolio details
|
211
|
+
*EntitiesApi* | [**get_data_type_by_entity_unique_id**](docs/EntitiesApi.md#get_data_type_by_entity_unique_id) | **GET** /api/entities/datatypes/{entityUniqueId} | [EXPERIMENTAL] GetDataTypeByEntityUniqueId: Get DataType by EntityUniqueId
|
211
212
|
*EntitiesApi* | [**get_instrument_by_entity_unique_id**](docs/EntitiesApi.md#get_instrument_by_entity_unique_id) | **GET** /api/entities/instruments/{entityUniqueId} | [EXPERIMENTAL] GetInstrumentByEntityUniqueId: Get instrument by EntityUniqueId
|
212
213
|
*EntitiesApi* | [**get_portfolio_by_entity_unique_id**](docs/EntitiesApi.md#get_portfolio_by_entity_unique_id) | **GET** /api/entities/portfolios/{entityUniqueId} | [EXPERIMENTAL] GetPortfolioByEntityUniqueId: Get portfolio by EntityUniqueId
|
213
214
|
*EntitiesApi* | [**get_portfolio_changes**](docs/EntitiesApi.md#get_portfolio_changes) | **GET** /api/entities/changes/portfolios | GetPortfolioChanges: Get the next change to each portfolio in a scope.
|
@@ -815,6 +816,7 @@ Class | Method | HTTP request | Description
|
|
815
816
|
- [DataMapping](docs/DataMapping.md)
|
816
817
|
- [DataScope](docs/DataScope.md)
|
817
818
|
- [DataType](docs/DataType.md)
|
819
|
+
- [DataTypeEntity](docs/DataTypeEntity.md)
|
818
820
|
- [DataTypeSummary](docs/DataTypeSummary.md)
|
819
821
|
- [DataTypeValueRange](docs/DataTypeValueRange.md)
|
820
822
|
- [DateAttributes](docs/DateAttributes.md)
|
@@ -1,4 +1,4 @@
|
|
1
|
-
lusid/__init__.py,sha256=
|
1
|
+
lusid/__init__.py,sha256=jKewBEkQd00ywToJglKUyCU_GLQBjiQnvuoyc6ZiZJ8,114344
|
2
2
|
lusid/api/__init__.py,sha256=EuHJI-4kmmibn1IVmY9akKMT-R1Bnth9msFll5hlBGY,5652
|
3
3
|
lusid/api/abor_api.py,sha256=AvgsHuWE7qRSYJhKveBE2htSjHpqqS0VNJrysAfwME0,159655
|
4
4
|
lusid/api/abor_configuration_api.py,sha256=G2bKPtMYOZ2GhUrg-nPJtCa9XIZdZYK7oafcbJWDMP8,64033
|
@@ -22,7 +22,7 @@ lusid/api/custom_entity_types_api.py,sha256=fLeAZaJ9Gdkfkr_UVDuqueiIxuN_5ri80dvq
|
|
22
22
|
lusid/api/cut_label_definitions_api.py,sha256=7sroMqRhrOXdJlHQJ6f4NbqDRwOh7ewfY2yHGopZ7KM,47049
|
23
23
|
lusid/api/data_types_api.py,sha256=OiQL4CRxwWd06DovdcLZbOqPx4AfbwYQ9yXYtaRqWWc,77801
|
24
24
|
lusid/api/derived_transaction_portfolios_api.py,sha256=cKv5mKNmTiuHzWGwupwcSBibj3Ncwv88GiEJSqmAbCY,20227
|
25
|
-
lusid/api/entities_api.py,sha256=
|
25
|
+
lusid/api/entities_api.py,sha256=gwA41PK2gtuUq8tT20Nl5sC0EffveDvvR_83X5NOWso,57122
|
26
26
|
lusid/api/executions_api.py,sha256=u92G5bsNwzMlKt9OyV7MQy6BTJc3TC9_7qgg8xXAuL0,44375
|
27
27
|
lusid/api/fee_types_api.py,sha256=4_wZtZkRyK2RHfDBwAK2XrspWzF_LCBYe_RUt_Y17zM,56137
|
28
28
|
lusid/api/fund_configurations_api.py,sha256=XbNaocdjU8sf37NZmH6NR1VMSITut9Fw6SMhOVBEjJ4,64107
|
@@ -68,7 +68,7 @@ lusid/api/transaction_portfolios_api.py,sha256=7G5m6iTQXTKCc6ASdxnlVJjvFascHxEgD
|
|
68
68
|
lusid/api/translation_api.py,sha256=xTAaKEW96JTDIZBXCjxSguCa7Gz4oVd5jdObUE2egwo,20092
|
69
69
|
lusid/api_client.py,sha256=dF6l9RAsdxdQjf6Qn4ny6LB-QXlJmsscWiozCvyyBFA,30709
|
70
70
|
lusid/api_response.py,sha256=6-gnhty6lu8MMAERt3_kTVD7UxQgWFfcjgpcq6iN5IU,855
|
71
|
-
lusid/configuration.py,sha256=
|
71
|
+
lusid/configuration.py,sha256=P1Ffzj5d6Z1yI09k8NQNZytn3f7O0otC1oqqXSPlAhc,14404
|
72
72
|
lusid/exceptions.py,sha256=HIQwgmQrszLlcVCLaqex8dO0laVuejUyOMz7U2ZWJ6s,5326
|
73
73
|
lusid/extensions/__init__.py,sha256=dzDHEzpn-9smd2-_UMWQzeyX6Ha4jGf6fnqx7qxKxNI,630
|
74
74
|
lusid/extensions/api_client.py,sha256=Ob06urm4Em3MLzgP_geyeeGsPCkU225msW_1kpIeABM,30567
|
@@ -82,7 +82,7 @@ lusid/extensions/rest.py,sha256=tjVCu-cRrYcjp-ttB975vebPKtBNyBWaeoAdO3QXG2I,1269
|
|
82
82
|
lusid/extensions/retry.py,sha256=orBJ1uF1iT1IncjWX1iGHVqsCgTh0SBe9rtiV_sPnwk,11564
|
83
83
|
lusid/extensions/socket_keep_alive.py,sha256=NGlqsv-E25IjJOLGZhXZY6kUdx51nEF8qCQyVdzayRk,1653
|
84
84
|
lusid/extensions/tcp_keep_alive_connector.py,sha256=zaGtUsygRsxB1_4B3x39K3ILwztdhMLDv5bFZV7zmGE,3877
|
85
|
-
lusid/models/__init__.py,sha256
|
85
|
+
lusid/models/__init__.py,sha256=-kdSl9Kb7_OuVjlz_7KfE-H0nOKYQbaNRv5W7gbSHXA,107660
|
86
86
|
lusid/models/a2_b_breakdown.py,sha256=Txi12EIQw3mH6NM-25QkOnHSQc3BVAWrP7yl9bZswSY,2947
|
87
87
|
lusid/models/a2_b_category.py,sha256=k6NPAACi0CUjKyhdQac4obQSrPmp2PXD6lkAtCnyEFM,2725
|
88
88
|
lusid/models/a2_b_data_record.py,sha256=zKGS2P4fzNpzdcGJiSIpkY4P3d_jAcawYfyuPCDeQgk,9737
|
@@ -322,7 +322,8 @@ lusid/models/data_definition.py,sha256=Qec5QcARQS0eU7l2ffhCKirfcPg1aQD-YRH-C0S-H
|
|
322
322
|
lusid/models/data_map_key.py,sha256=C5B8fN4pTsO1DOGwiBrzudP96Mn9FHn8OLpjA6rLfLc,3407
|
323
323
|
lusid/models/data_mapping.py,sha256=Is0cRnq2bDOXbx6SSheCH4diqFxNcsobCpIv34B4TLc,3637
|
324
324
|
lusid/models/data_scope.py,sha256=p-8zVk5vyLUzWERyDPgmBMkYMwKTDdM-ShGKwAFJ2Ko,2324
|
325
|
-
lusid/models/data_type.py,sha256=
|
325
|
+
lusid/models/data_type.py,sha256=m-KEJwXEMSVnP_XrECT9lCy4dvkr1Q-mWQ7lYuuDAgc,7760
|
326
|
+
lusid/models/data_type_entity.py,sha256=6Bwf9syJbtMUm1BSTLlL1p0Birq6rCAqy7wCQ0qrmGw,6677
|
326
327
|
lusid/models/data_type_summary.py,sha256=vxRqXJKBcXMJmlLKTxRcG4F4zv2eFVfPl6q6hFGsyPQ,6616
|
327
328
|
lusid/models/data_type_value_range.py,sha256=5YSqhwEsjFS9_0UpjmiTra9NDWAi0Bp8ZMS62hBlYlo,722
|
328
329
|
lusid/models/date_attributes.py,sha256=1zy4nT1ZA2i6UT7p9zVrUkZjBgpQPJzOZMqlQtacsm8,5794
|
@@ -532,7 +533,7 @@ lusid/models/intermediate_compliance_step_request.py,sha256=cx9WUvfU_jlcOv3RskTe
|
|
532
533
|
lusid/models/ir_vol_cube_data.py,sha256=2USuuiZigPzS0kwmMMTu1Ih9GHln6TAkPamcYNmUYQ4,5867
|
533
534
|
lusid/models/ir_vol_dependency.py,sha256=D937a4jaVJw75aCY4iQfkwVQW9T5F_vL8g6pbULBmMQ,4523
|
534
535
|
lusid/models/is_business_day_response.py,sha256=LMwNCeJaC1JJ1W5Qp9WkWOBQ-mBA036kPYkG7p-7Yjs,2163
|
535
|
-
lusid/models/journal_entry_line.py,sha256=
|
536
|
+
lusid/models/journal_entry_line.py,sha256=qUPznQuVteBt5MwPtZjWJHBWPfiZ9s1TtE734oHQ8D0,14060
|
536
537
|
lusid/models/journal_entry_lines_query_parameters.py,sha256=ZZhOnG3yXxNvfzL9gxLO0OzFdg_O4R5ZqIz83EE-CwE,4663
|
537
538
|
lusid/models/label_value_set.py,sha256=LmKlXRjeEx_uT1enh_EthgQx6e9JKNyGkBKkTd2eijI,1895
|
538
539
|
lusid/models/leg_definition.py,sha256=WgraquXV_a2tt9Zo4TetGUz8_CMEh-PsxI90VN_1yJk,11100
|
@@ -921,7 +922,7 @@ lusid/models/settlement_schedule.py,sha256=59PJAHeLK6_fxSRjQ7wGk4zUbyIMjZhiZ-RJ1
|
|
921
922
|
lusid/models/share_class_amount.py,sha256=l-3zCMzmy84d1c0co0t_DgXOCk8t2RKBZ1XljO1jOks,2133
|
922
923
|
lusid/models/share_class_breakdown.py,sha256=IrD_nQ6cMUod_fA8V_vWAVGgbPh8ccQgP6xQ_hodTJk,8058
|
923
924
|
lusid/models/share_class_data.py,sha256=dQp2IM-pzSazRdXT4aIHN3BsWiso360CemAwWmu_UH0,2903
|
924
|
-
lusid/models/share_class_details.py,sha256=
|
925
|
+
lusid/models/share_class_details.py,sha256=SMX_luuHnRXghiCct1Ftt_KhwNjSyo2fC6uxAB_oqmA,4281
|
925
926
|
lusid/models/share_class_pnl_breakdown.py,sha256=fKJrgNp-Fn9c52DXeNdwAWz-WZ2suJ8-LdyAl5iZRrY,4551
|
926
927
|
lusid/models/side_configuration_data.py,sha256=iv4nyDEEAYA2TUfY-dlqOGwn-mft8qMGVQk6itgxqe4,3518
|
927
928
|
lusid/models/side_configuration_data_request.py,sha256=qWt-UDjQbcoPpHCUpRwcSN8NFfcZ4TpHMn2dRuR3WVw,2842
|
@@ -1115,6 +1116,6 @@ lusid/models/weighted_instruments.py,sha256=1y_y_vw4-LPsbkQx4FOzWdZc5fJnzhVkf1D3
|
|
1115
1116
|
lusid/models/yield_curve_data.py,sha256=SbxvdJ4-GWK9kpMdw4Fnxc7_kvIMwgsRsd_31UJn7nw,6330
|
1116
1117
|
lusid/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1117
1118
|
lusid/rest.py,sha256=TNUzQ3yLNT2L053EdR7R0vNzQh2J3TlYD1T56Dye0W0,10138
|
1118
|
-
lusid_sdk-2.1.
|
1119
|
-
lusid_sdk-2.1.
|
1120
|
-
lusid_sdk-2.1.
|
1119
|
+
lusid_sdk-2.1.336.dist-info/METADATA,sha256=Kw_xL9HXjNLE-UXROtc1axLBHjbaFn7US-KzscJI25E,188462
|
1120
|
+
lusid_sdk-2.1.336.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
1121
|
+
lusid_sdk-2.1.336.dist-info/RECORD,,
|
File without changes
|