lusid-sdk 2.1.261__py3-none-any.whl → 2.1.320__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 +38 -0
- lusid/api/compliance_api.py +191 -0
- lusid/api/funds_api.py +1 -1
- lusid/api/order_management_api.py +159 -0
- lusid/api/scopes_api.py +38 -9
- lusid/configuration.py +1 -1
- lusid/extensions/configuration_loaders.py +9 -1
- lusid/models/__init__.py +38 -0
- lusid/models/cancel_orders_response.py +153 -0
- lusid/models/cancelled_order_result.py +73 -0
- lusid/models/cash.py +93 -0
- lusid/models/compliance_run_configuration.py +73 -0
- lusid/models/component_filter.py +85 -0
- lusid/models/component_rule.py +13 -19
- lusid/models/contract_for_difference.py +4 -2
- lusid/models/fund.py +6 -1
- lusid/models/fund_amount.py +69 -0
- lusid/models/fund_configuration.py +16 -15
- lusid/models/fund_configuration_request.py +18 -12
- lusid/models/fund_pnl_breakdown.py +110 -0
- lusid/models/fund_previous_nav.py +69 -0
- lusid/models/fund_request.py +6 -1
- lusid/models/fund_valuation_point_data.py +152 -0
- lusid/models/futures_contract_details.py +9 -2
- lusid/models/lusid_instrument.py +3 -2
- lusid/models/market_data_key_rule.py +3 -3
- lusid/models/market_data_specific_rule.py +3 -3
- lusid/models/market_quote.py +3 -3
- lusid/models/model_selection.py +3 -3
- lusid/models/pre_trade_configuration.py +69 -0
- lusid/models/previous_fund_valuation_point_data.py +79 -0
- lusid/models/previous_nav.py +73 -0
- lusid/models/previous_share_class_breakdown.py +81 -0
- lusid/models/pricing_model.py +1 -0
- lusid/models/quote_series_id.py +4 -20
- lusid/models/quote_type.py +3 -0
- lusid/models/share_class_amount.py +73 -0
- lusid/models/share_class_breakdown.py +163 -0
- lusid/models/share_class_data.py +79 -0
- lusid/models/share_class_details.py +108 -0
- lusid/models/share_class_pnl_breakdown.py +110 -0
- lusid/models/staged_modification.py +8 -1
- lusid/models/template_field.py +3 -1
- lusid/models/transaction_configuration_movement_data.py +2 -2
- lusid/models/transaction_configuration_movement_data_request.py +1 -1
- lusid/models/transaction_field_map.py +1 -1
- lusid/models/transaction_type_movement.py +2 -2
- lusid/models/unitisation_data.py +73 -0
- lusid/models/valuation_point_data_response.py +30 -9
- {lusid_sdk-2.1.261.dist-info → lusid_sdk-2.1.320.dist-info}/METADATA +30 -215
- {lusid_sdk-2.1.261.dist-info → lusid_sdk-2.1.320.dist-info}/RECORD +52 -33
- {lusid_sdk-2.1.261.dist-info → lusid_sdk-2.1.320.dist-info}/WHEEL +0 -0
@@ -27,13 +27,13 @@ class TransactionConfigurationMovementData(BaseModel):
|
|
27
27
|
"""
|
28
28
|
TransactionConfigurationMovementData
|
29
29
|
"""
|
30
|
-
movement_types: StrictStr = Field(..., alias="movementTypes", description=". The available values are: Settlement, Traded, StockMovement, FutureCash, Commitment, Receivable, CashSettlement, CashForward, CashCommitment, CashReceivable, Accrual, CashAccrual, ForwardFx, CashFxForward, UnsettledCashTypes, Carry, CarryAsPnl, VariationMargin, Capital, Fee")
|
30
|
+
movement_types: StrictStr = Field(..., alias="movementTypes", description="Movement types determine the impact of the movement on the holdings. The available values are: Settlement, Traded, StockMovement, FutureCash, Commitment, Receivable, CashSettlement, CashForward, CashCommitment, CashReceivable, Accrual, CashAccrual, ForwardFx, CashFxForward, UnsettledCashTypes, Carry, CarryAsPnl, VariationMargin, Capital, Fee. The available values are: Settlement, Traded, StockMovement, FutureCash, Commitment, Receivable, CashSettlement, CashForward, CashCommitment, CashReceivable, Accrual, CashAccrual, ForwardFx, CashFxForward, UnsettledCashTypes, Carry, CarryAsPnl, VariationMargin, Capital, Fee")
|
31
31
|
side: constr(strict=True, min_length=1) = Field(..., description="The Side determines which of the fields from our transaction are used to generate the Movement. Side1 means the 'security' side of the transaction, ie the Instrument and Units; Side2 means the 'cash' side, ie the Total Consideration")
|
32
32
|
direction: StrictInt = Field(..., description=" A multiplier to apply to Transaction amounts; the values are -1 to indicate to reverse the signs and 1 to indicate to use the signed values from the Transaction directly. For a typical Transaction with unsigned values, 1 means increase, -1 means decrease")
|
33
33
|
properties: Optional[Dict[str, PerpetualProperty]] = Field(None, description="The properties associated with the underlying Movement")
|
34
34
|
mappings: Optional[conlist(TransactionPropertyMapping)] = Field(None, description="This allows you to map a transaction property to a property on the underlying holding")
|
35
35
|
name: Optional[StrictStr] = Field(None, description="The movement name (optional)")
|
36
|
-
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment' and '
|
36
|
+
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment', 'IncludesTradedInterest' and 'Virtual' (works only with the movement type 'StockMovement'). A movement type of 'StockMovement' with an option of 'DirectAdjusment' will allow you to adjust the units of a holding without affecting its cost base. You will, therefore, be able to reflect the impact of a stock split by loading a Transaction.")
|
37
37
|
__properties = ["movementTypes", "side", "direction", "properties", "mappings", "name", "movementOptions"]
|
38
38
|
|
39
39
|
@validator('movement_types')
|
@@ -33,7 +33,7 @@ class TransactionConfigurationMovementDataRequest(BaseModel):
|
|
33
33
|
properties: Optional[Dict[str, PerpetualProperty]] = Field(None, description="The properties associated with the underlying Movement.")
|
34
34
|
mappings: Optional[conlist(TransactionPropertyMappingRequest)] = Field(None, description="This allows you to map a transaction property to a property on the underlying holding.")
|
35
35
|
name: Optional[StrictStr] = Field(None, description="The movement name (optional)")
|
36
|
-
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment' and '
|
36
|
+
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment', 'IncludesTradedInterest' and 'Virtual' (works only with the movement type 'StockMovement'). A movement type of 'StockMovement' with an option of 'DirectAdjusment' will allow you to adjust the units of a holding without affecting its cost base. You will, therefore, be able to reflect the impact of a stock split by loading a Transaction.")
|
37
37
|
__properties = ["movementTypes", "side", "direction", "properties", "mappings", "name", "movementOptions"]
|
38
38
|
|
39
39
|
@validator('movement_types')
|
@@ -34,7 +34,7 @@ class TransactionFieldMap(BaseModel):
|
|
34
34
|
transaction_date: constr(strict=True, max_length=1024, min_length=0) = Field(..., alias="transactionDate")
|
35
35
|
settlement_date: constr(strict=True, max_length=1024, min_length=0) = Field(..., alias="settlementDate")
|
36
36
|
units: constr(strict=True, max_length=1024, min_length=0) = Field(...)
|
37
|
-
transaction_price: TransactionPriceAndType = Field(
|
37
|
+
transaction_price: Optional[TransactionPriceAndType] = Field(None, alias="transactionPrice")
|
38
38
|
transaction_currency: constr(strict=True, max_length=1024, min_length=0) = Field(..., alias="transactionCurrency")
|
39
39
|
exchange_rate: Optional[constr(strict=True, max_length=1024, min_length=0)] = Field(None, alias="exchangeRate")
|
40
40
|
total_consideration: TransactionCurrencyAndAmount = Field(..., alias="totalConsideration")
|
@@ -27,13 +27,13 @@ class TransactionTypeMovement(BaseModel):
|
|
27
27
|
"""
|
28
28
|
TransactionTypeMovement
|
29
29
|
"""
|
30
|
-
movement_types: constr(strict=True, min_length=1) = Field(..., alias="movementTypes", description="Movement types determine the impact of the movement on the holdings")
|
30
|
+
movement_types: constr(strict=True, min_length=1) = Field(..., alias="movementTypes", description="Movement types determine the impact of the movement on the holdings. The available values are: Settlement, Traded, StockMovement, FutureCash, Commitment, Receivable, CashSettlement, CashForward, CashCommitment, CashReceivable, Accrual, CashAccrual, ForwardFx, CashFxForward, UnsettledCashTypes, Carry, CarryAsPnl, VariationMargin, Capital, Fee.")
|
31
31
|
side: constr(strict=True, max_length=64, min_length=1) = Field(..., description="The Side determines which of the fields from our transaction are used to generate the Movement. Side1 means the 'security' side of the transaction, ie the Instrument and Units; Side2 means the 'cash' side, ie the Total Consideration")
|
32
32
|
direction: StrictInt = Field(..., description=" A multiplier to apply to Transaction amounts; the values are -1 to indicate to reverse the signs and 1 to indicate to use the signed values from the Transaction directly. For a typical Transaction with unsigned values, 1 means increase, -1 means decrease")
|
33
33
|
properties: Optional[Dict[str, PerpetualProperty]] = Field(None, description="The properties associated with the underlying Movement")
|
34
34
|
mappings: Optional[conlist(TransactionTypePropertyMapping, max_items=5000)] = Field(None, description="This allows you to map a transaction property to a property on the underlying holding")
|
35
35
|
name: Optional[constr(strict=True, max_length=512, min_length=1)] = Field(None, description="The movement name (optional)")
|
36
|
-
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment' and '
|
36
|
+
movement_options: Optional[conlist(StrictStr)] = Field(None, alias="movementOptions", description="Allows extra specifications for the movement. The options currently available are 'DirectAdjustment', 'IncludesTradedInterest' and 'Virtual' (works only with the movement type 'StockMovement'). A movement type of 'StockMovement' with an option of 'DirectAdjusment' will allow you to adjust the units of a holding without affecting its cost base. You will, therefore, be able to reflect the impact of a stock split by loading a Transaction.")
|
37
37
|
settlement_date_override: Optional[StrictStr] = Field(None, alias="settlementDateOverride", description="Optional property key that must be in the Transaction domain when specified. When the movement is processed and the transaction has this property set to a valid date, then the property value will override the SettlementDate of the transaction.")
|
38
38
|
condition: Optional[constr(strict=True, max_length=16384, min_length=0)] = Field(None, description="The condition that the transaction must satisfy to generate the movement, such as: Portfolio.BaseCurrency eq 'GBP'. The condition can contain fields and properties from transactions and portfolios. If no condition is provided, the movement will apply for all transactions of this type.")
|
39
39
|
__properties = ["movementTypes", "side", "direction", "properties", "mappings", "name", "movementOptions", "settlementDateOverride", "condition"]
|
@@ -0,0 +1,73 @@
|
|
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, Union
|
22
|
+
from pydantic.v1 import BaseModel, Field, StrictFloat, StrictInt
|
23
|
+
|
24
|
+
class UnitisationData(BaseModel):
|
25
|
+
"""
|
26
|
+
UnitisationData
|
27
|
+
"""
|
28
|
+
shares_in_issue: Union[StrictFloat, StrictInt] = Field(..., alias="sharesInIssue", description="The number of shares in issue at a valuation point.")
|
29
|
+
unit_price: Union[StrictFloat, StrictInt] = Field(..., alias="unitPrice", description="The price of one unit of the share class at a valuation point.")
|
30
|
+
net_dealing_units: Union[StrictFloat, StrictInt] = Field(..., alias="netDealingUnits", description="The net dealing in units for the share class at a valuation point. This could be the sum of negative redemptions (in units) and positive subscriptions (in units).")
|
31
|
+
__properties = ["sharesInIssue", "unitPrice", "netDealingUnits"]
|
32
|
+
|
33
|
+
class Config:
|
34
|
+
"""Pydantic configuration"""
|
35
|
+
allow_population_by_field_name = True
|
36
|
+
validate_assignment = True
|
37
|
+
|
38
|
+
def to_str(self) -> str:
|
39
|
+
"""Returns the string representation of the model using alias"""
|
40
|
+
return pprint.pformat(self.dict(by_alias=True))
|
41
|
+
|
42
|
+
def to_json(self) -> str:
|
43
|
+
"""Returns the JSON representation of the model using alias"""
|
44
|
+
return json.dumps(self.to_dict())
|
45
|
+
|
46
|
+
@classmethod
|
47
|
+
def from_json(cls, json_str: str) -> UnitisationData:
|
48
|
+
"""Create an instance of UnitisationData from a JSON string"""
|
49
|
+
return cls.from_dict(json.loads(json_str))
|
50
|
+
|
51
|
+
def to_dict(self):
|
52
|
+
"""Returns the dictionary representation of the model using alias"""
|
53
|
+
_dict = self.dict(by_alias=True,
|
54
|
+
exclude={
|
55
|
+
},
|
56
|
+
exclude_none=True)
|
57
|
+
return _dict
|
58
|
+
|
59
|
+
@classmethod
|
60
|
+
def from_dict(cls, obj: dict) -> UnitisationData:
|
61
|
+
"""Create an instance of UnitisationData from a dict"""
|
62
|
+
if obj is None:
|
63
|
+
return None
|
64
|
+
|
65
|
+
if not isinstance(obj, dict):
|
66
|
+
return UnitisationData.parse_obj(obj)
|
67
|
+
|
68
|
+
_obj = UnitisationData.parse_obj({
|
69
|
+
"shares_in_issue": obj.get("sharesInIssue"),
|
70
|
+
"unit_price": obj.get("unitPrice"),
|
71
|
+
"net_dealing_units": obj.get("netDealingUnits")
|
72
|
+
})
|
73
|
+
return _obj
|
@@ -21,24 +21,28 @@ import json
|
|
21
21
|
from typing import Any, Dict, List, Optional, Union
|
22
22
|
from pydantic.v1 import BaseModel, Field, StrictFloat, StrictInt, StrictStr, conlist, constr
|
23
23
|
from lusid.models.fee_accrual import FeeAccrual
|
24
|
+
from lusid.models.fund_valuation_point_data import FundValuationPointData
|
24
25
|
from lusid.models.link import Link
|
26
|
+
from lusid.models.share_class_data import ShareClassData
|
25
27
|
|
26
28
|
class ValuationPointDataResponse(BaseModel):
|
27
29
|
"""
|
28
30
|
The Valuation Point Data Response for the Fund and specified date. # noqa: E501
|
29
31
|
"""
|
30
32
|
href: Optional[StrictStr] = Field(None, description="The specific Uniform Resource Identifier (URI) for this resource at the requested effective and asAt datetime.")
|
31
|
-
type: constr(strict=True, min_length=1) = Field(..., description="The Type of the associated Diary Entry ('PeriodBoundary','ValuationPoint','Other' or 'Adhoc' when a diary
|
33
|
+
type: constr(strict=True, min_length=1) = Field(..., description="The Type of the associated Diary Entry ('PeriodBoundary','ValuationPoint','Other' or 'Adhoc' when a diary entry wasn't used).")
|
32
34
|
status: constr(strict=True, min_length=1) = Field(..., description="The Status of the associated Diary Entry ('Estimate','Final','Candidate' or 'Unofficial').")
|
33
|
-
backout: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., description="Bucket of detail for the Valuation Point, where data points have been 'backed out'.")
|
34
|
-
dealing: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., description="Bucket of detail for any 'Dealing' that has occured inside the queried period.")
|
35
|
-
pn_l: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., alias="pnL", description="Bucket of detail for 'PnL' that has occured inside the queried period.")
|
36
|
-
gav: Union[StrictFloat, StrictInt] = Field(..., description="The Gross Asset Value of the Fund at the Period end. This is effectively a summation of all Trial balance entries linked to accounts of types 'Asset' and 'Liabilities'.")
|
37
|
-
fees: Dict[str, FeeAccrual] = Field(..., description="Bucket of detail for any 'Fees' that have been charged in the selected period.")
|
38
|
-
nav: Union[StrictFloat, StrictInt] = Field(..., description="The Net Asset Value of the Fund at the Period end. This represents the GAV with any fees applied in the period.")
|
39
|
-
previous_nav: Union[StrictFloat, StrictInt] = Field(..., alias="previousNav", description="The Net Asset Value of the Fund at the End of the last Period.")
|
35
|
+
backout: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., description="DEPRECATED. Bucket of detail for the Valuation Point, where data points have been 'backed out'.")
|
36
|
+
dealing: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., description="DEPRECATED. Bucket of detail for any 'Dealing' that has occured inside the queried period.")
|
37
|
+
pn_l: Dict[str, Union[StrictFloat, StrictInt]] = Field(..., alias="pnL", description="DEPRECATED. Bucket of detail for 'PnL' that has occured inside the queried period.")
|
38
|
+
gav: Union[StrictFloat, StrictInt] = Field(..., description="DEPRECATED. The Gross Asset Value of the Fund at the Period end. This is effectively a summation of all Trial balance entries linked to accounts of types 'Asset' and 'Liabilities'.")
|
39
|
+
fees: Dict[str, FeeAccrual] = Field(..., description="DEPRECATED. Bucket of detail for any 'Fees' that have been charged in the selected period.")
|
40
|
+
nav: Union[StrictFloat, StrictInt] = Field(..., description="DEPRECATED. The Net Asset Value of the Fund at the Period end. This represents the GAV with any fees applied in the period.")
|
41
|
+
previous_nav: Union[StrictFloat, StrictInt] = Field(..., alias="previousNav", description="DEPRECATED. The Net Asset Value of the Fund at the End of the last Period.")
|
42
|
+
fund_valuation_point_data: FundValuationPointData = Field(..., alias="fundValuationPointData")
|
43
|
+
share_class_data: Dict[str, ShareClassData] = Field(..., alias="shareClassData", description="The data for all share classes in fund. Share classes are identified by their short codes.")
|
40
44
|
links: Optional[conlist(Link)] = None
|
41
|
-
__properties = ["href", "type", "status", "backout", "dealing", "pnL", "gav", "fees", "nav", "previousNav", "links"]
|
45
|
+
__properties = ["href", "type", "status", "backout", "dealing", "pnL", "gav", "fees", "nav", "previousNav", "fundValuationPointData", "shareClassData", "links"]
|
42
46
|
|
43
47
|
class Config:
|
44
48
|
"""Pydantic configuration"""
|
@@ -71,6 +75,16 @@ class ValuationPointDataResponse(BaseModel):
|
|
71
75
|
if self.fees[_key]:
|
72
76
|
_field_dict[_key] = self.fees[_key].to_dict()
|
73
77
|
_dict['fees'] = _field_dict
|
78
|
+
# override the default output from pydantic by calling `to_dict()` of fund_valuation_point_data
|
79
|
+
if self.fund_valuation_point_data:
|
80
|
+
_dict['fundValuationPointData'] = self.fund_valuation_point_data.to_dict()
|
81
|
+
# override the default output from pydantic by calling `to_dict()` of each value in share_class_data (dict)
|
82
|
+
_field_dict = {}
|
83
|
+
if self.share_class_data:
|
84
|
+
for _key in self.share_class_data:
|
85
|
+
if self.share_class_data[_key]:
|
86
|
+
_field_dict[_key] = self.share_class_data[_key].to_dict()
|
87
|
+
_dict['shareClassData'] = _field_dict
|
74
88
|
# override the default output from pydantic by calling `to_dict()` of each item in links (list)
|
75
89
|
_items = []
|
76
90
|
if self.links:
|
@@ -115,6 +129,13 @@ class ValuationPointDataResponse(BaseModel):
|
|
115
129
|
else None,
|
116
130
|
"nav": obj.get("nav"),
|
117
131
|
"previous_nav": obj.get("previousNav"),
|
132
|
+
"fund_valuation_point_data": FundValuationPointData.from_dict(obj.get("fundValuationPointData")) if obj.get("fundValuationPointData") is not None else None,
|
133
|
+
"share_class_data": dict(
|
134
|
+
(_k, ShareClassData.from_dict(_v))
|
135
|
+
for _k, _v in obj.get("shareClassData").items()
|
136
|
+
)
|
137
|
+
if obj.get("shareClassData") is not None
|
138
|
+
else None,
|
118
139
|
"links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
|
119
140
|
})
|
120
141
|
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.320
|
4
4
|
Summary: LUSID API
|
5
5
|
Home-page: https://github.com/finbourne/lusid-sdk-python
|
6
6
|
License: MIT
|
@@ -24,194 +24,7 @@ Requires-Dist: urllib3 (>=1.25.3,<2.0.0)
|
|
24
24
|
Project-URL: Repository, https://github.com/finbourne/lusid-sdk-python
|
25
25
|
Description-Content-Type: text/markdown
|
26
26
|
|
27
|
-
|
28
|
-
FINBOURNE Technology
|
29
|
-
|
30
|
-
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
31
|
-
|
32
|
-
- API version: 0.11.6694
|
33
|
-
- Package version: 2.1.261
|
34
|
-
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
35
|
-
For more information, please visit [https://www.finbourne.com](https://www.finbourne.com)
|
36
|
-
|
37
|
-
## Requirements.
|
38
|
-
|
39
|
-
Python 3.7+
|
40
|
-
|
41
|
-
## Installation & Usage
|
42
|
-
### pip install
|
43
|
-
|
44
|
-
If the python package is hosted on a repository, you can install directly using:
|
45
|
-
|
46
|
-
```sh
|
47
|
-
pip install git+https://github.com/finbourne/lusid-sdk-python.git
|
48
|
-
```
|
49
|
-
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/finbourne/lusid-sdk-python.git`)
|
50
|
-
|
51
|
-
Then import the package:
|
52
|
-
```python
|
53
|
-
import lusid
|
54
|
-
```
|
55
|
-
|
56
|
-
### Setuptools
|
57
|
-
|
58
|
-
Install via [Setuptools](http://pypi.python.org/pypi/setuptools).
|
59
|
-
|
60
|
-
```sh
|
61
|
-
python setup.py install --user
|
62
|
-
```
|
63
|
-
(or `sudo python setup.py install` to install the package for all users)
|
64
|
-
|
65
|
-
Then import the package:
|
66
|
-
```python
|
67
|
-
import lusid
|
68
|
-
```
|
69
|
-
|
70
|
-
### Tests
|
71
|
-
|
72
|
-
Execute `pytest` to run the tests.
|
73
|
-
|
74
|
-
## Getting Started
|
75
|
-
|
76
|
-
You'll need to provide some configuration to connect to the lusid application.
|
77
|
-
These can be provided using a secrets file or environment variables.
|
78
|
-
|
79
|
-
### Environment variables
|
80
|
-
|
81
|
-
In order to use [short lived access tokens](https://support.lusid.com/knowledgebase/article/KA-01654/en-us) you will need to have appropriate values set for the following environment variables:
|
82
|
-
|
83
|
-
```
|
84
|
-
FBN_TOKEN_URL,
|
85
|
-
FBN_LUSID_API_URL,
|
86
|
-
FBN_USERNAME,
|
87
|
-
FBN_PASSWORD,
|
88
|
-
FBN_CLIENT_ID,
|
89
|
-
FBN_CLIENT_SECRET
|
90
|
-
```
|
91
|
-
|
92
|
-
To use a long lived Personal Access Token, you must provide the following environment variables:
|
93
|
-
```
|
94
|
-
FBN_LUSID_API_URL,
|
95
|
-
FBN_ACCESS_TOKEN
|
96
|
-
```
|
97
|
-
|
98
|
-
You can send your requests to lusid via a proxy, by setting `FBN_PROXY_ADDRESS`.
|
99
|
-
If your proxy has basic auth enabled, you must akso supply `FBN_PROXY_USERNAME` and `FBN_PROXY_PASSWORD`
|
100
|
-
|
101
|
-
### Secrets file
|
102
|
-
|
103
|
-
In order to use [short lived access tokens](https://support.lusid.com/knowledgebase/article/KA-01654/en-us) you will need to have appropriate values set in a `secrets.json` file in the same folder as your script.
|
104
|
-
|
105
|
-
```
|
106
|
-
{
|
107
|
-
"api":
|
108
|
-
{
|
109
|
-
"tokenUrl":"<your-token-url>",
|
110
|
-
"lusidUrl":"<FINBOURNE-application-url>",
|
111
|
-
"username":"<your-username>",
|
112
|
-
"password":"<your-password>",
|
113
|
-
"clientId":"<your-client-id>",
|
114
|
-
"clientSecret":"<your-client-secret>",
|
115
|
-
}
|
116
|
-
}
|
117
|
-
```
|
118
|
-
|
119
|
-
To use a long lived Personal Access Token, you must provide a `secrets.json` with the following variables:
|
120
|
-
```
|
121
|
-
{
|
122
|
-
"api":
|
123
|
-
{
|
124
|
-
"lusidUrl":"<FINBOURNE-application-url>",
|
125
|
-
"accessToken":"<your-access-token>"
|
126
|
-
}
|
127
|
-
}
|
128
|
-
```
|
129
|
-
|
130
|
-
You can send your requests to lusid via a proxy, by adding a proxy section to your `secrets.json`.
|
131
|
-
If your proxy has basic auth enabled, you must also supply a `username` and `password` in this section.
|
132
|
-
|
133
|
-
```
|
134
|
-
{
|
135
|
-
"api":
|
136
|
-
{
|
137
|
-
"lusidUrl":"<FINBOURNE-application-url>",
|
138
|
-
"accessToken":"<your-access-token>"
|
139
|
-
},
|
140
|
-
"proxy":
|
141
|
-
{
|
142
|
-
"address":"<your-proxy-address>",
|
143
|
-
"username":"<your-proxy-username>",
|
144
|
-
"password":"<your-proxy-password>"
|
145
|
-
}
|
146
|
-
}
|
147
|
-
```
|
148
|
-
|
149
|
-
### Using the SDK
|
150
|
-
|
151
|
-
Please follow the [installation procedure](#installation--usage) and then run the following:
|
152
|
-
|
153
|
-
```python
|
154
|
-
|
155
|
-
import time
|
156
|
-
import lusid
|
157
|
-
from lusid.exceptions import ApiException
|
158
|
-
from pprint import pprint
|
159
|
-
|
160
|
-
import os
|
161
|
-
from lusid import (
|
162
|
-
ApiClientFactory,
|
163
|
-
AborApi,
|
164
|
-
EnvironmentVariablesConfigurationLoader,
|
165
|
-
SecretsFileConfigurationLoader,
|
166
|
-
ArgsConfigurationLoader
|
167
|
-
)
|
168
|
-
|
169
|
-
# Use the lusid ApiClientFactory to build Api instances with a configured api client
|
170
|
-
# By default this will read config from environment variables
|
171
|
-
# Then from a secrets.json file found in the current working directory
|
172
|
-
api_client_factory = ApiClientFactory()
|
173
|
-
|
174
|
-
# The ApiClientFactory can be passed an iterable of configuration loaders to read configuration from
|
175
|
-
|
176
|
-
api_url = "https://www.lusid.com/api"
|
177
|
-
# Path to a secrets.json file containing authentication credentials
|
178
|
-
# See https://support.lusid.com/knowledgebase/article/KA-01667/en-us
|
179
|
-
# for a detailed guide to setting up the SDK make authenticated calls to LUSID APIs
|
180
|
-
secrets_path = os.getenv("FBN_SECRETS_PATH")
|
181
|
-
app_name="LusidJupyterNotebook"
|
182
|
-
|
183
|
-
config_loaders = [
|
184
|
-
EnvironmentVariablesConfigurationLoader(),
|
185
|
-
SecretsFileConfigurationLoader(api_secrets_file=secrets_path),
|
186
|
-
ArgsConfigurationLoader(api_url=api_url, app_name=app_name)
|
187
|
-
]
|
188
|
-
api_client_factory = ApiClientFactory(config_loaders=config_loaders)
|
189
|
-
|
190
|
-
|
191
|
-
# The client must configure the authentication and authorization parameters
|
192
|
-
# in accordance with the API server security policy.
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
# Enter a context with an instance of the ApiClientFactory to ensure the connection pool is closed after use
|
197
|
-
async with api_client_factory:
|
198
|
-
# Create an instance of the API class
|
199
|
-
api_instance = api_client_factory.build(AborApi)
|
200
|
-
scope = 'scope_example' # str | The scope of the Abor.
|
201
|
-
code = 'code_example' # str | The code of the Abor.
|
202
|
-
diary_entry_code = 'diary_entry_code_example' # str | Diary entry code
|
203
|
-
diary_entry_request = {"name":"2023_Q1","status":"Estimate","effectiveAt":"2023-04-02T15:10:10.0000000+00:00","queryAsAt":"2023-04-15T15:10:10.0000000+00:00","properties":{"DiaryEntry/AccountingDiary/Reports":{"key":"DiaryEntry/AccountingDiary/Reports","value":{"labelValue":"Some comments"}}}} # DiaryEntryRequest | The diary entry to add.
|
204
|
-
|
205
|
-
try:
|
206
|
-
# [EXPERIMENTAL] AddDiaryEntry: Add a diary entry to the specified Abor.
|
207
|
-
api_response = await api_instance.add_diary_entry(scope, code, diary_entry_code, diary_entry_request)
|
208
|
-
print("The response of AborApi->add_diary_entry:\n")
|
209
|
-
pprint(api_response)
|
210
|
-
except ApiException as e:
|
211
|
-
print("Exception when calling AborApi->add_diary_entry: %s\n" % e)
|
212
|
-
|
213
|
-
```
|
214
|
-
|
27
|
+
<a id="documentation-for-api-endpoints"></a>
|
215
28
|
## Documentation for API Endpoints
|
216
29
|
|
217
30
|
All URIs are relative to *https://www.lusid.com/api*
|
@@ -240,7 +53,7 @@ Class | Method | HTTP request | Description
|
|
240
53
|
*AddressKeyDefinitionApi* | [**get_address_key_definition**](docs/AddressKeyDefinitionApi.md#get_address_key_definition) | **GET** /api/addresskeydefinitions/{key} | [EARLY ACCESS] GetAddressKeyDefinition: Get an AddressKeyDefinition.
|
241
54
|
*AddressKeyDefinitionApi* | [**list_address_key_definitions**](docs/AddressKeyDefinitionApi.md#list_address_key_definitions) | **GET** /api/addresskeydefinitions | [EARLY ACCESS] ListAddressKeyDefinitions: List AddressKeyDefinitions.
|
242
55
|
*AggregationApi* | [**generate_configuration_recipe**](docs/AggregationApi.md#generate_configuration_recipe) | **POST** /api/aggregation/{scope}/{code}/$generateconfigurationrecipe | [EXPERIMENTAL] GenerateConfigurationRecipe: Generates a recipe sufficient to perform valuations for the given portfolio.
|
243
|
-
*AggregationApi* | [**get_queryable_keys**](docs/AggregationApi.md#get_queryable_keys) | **GET** /api/results/queryable/keys | GetQueryableKeys: Query the set of supported
|
56
|
+
*AggregationApi* | [**get_queryable_keys**](docs/AggregationApi.md#get_queryable_keys) | **GET** /api/results/queryable/keys | GetQueryableKeys: Query the set of supported \"addresses\" that can be queried from the aggregation endpoint.
|
244
57
|
*AggregationApi* | [**get_valuation**](docs/AggregationApi.md#get_valuation) | **POST** /api/aggregation/$valuation | GetValuation: Perform valuation for a list of portfolios and/or portfolio groups
|
245
58
|
*AggregationApi* | [**get_valuation_of_weighted_instruments**](docs/AggregationApi.md#get_valuation_of_weighted_instruments) | **POST** /api/aggregation/$valuationinlined | GetValuationOfWeightedInstruments: Perform valuation for an inlined portfolio
|
246
59
|
*AllocationsApi* | [**delete_allocation**](docs/AllocationsApi.md#delete_allocation) | **DELETE** /api/allocations/{scope}/{code} | [EARLY ACCESS] DeleteAllocation: Delete allocation
|
@@ -268,7 +81,7 @@ Class | Method | HTTP request | Description
|
|
268
81
|
*CalendarsApi* | [**generate_schedule**](docs/CalendarsApi.md#generate_schedule) | **POST** /api/calendars/schedule/{scope} | [EARLY ACCESS] GenerateSchedule: Generate an ordered schedule of dates.
|
269
82
|
*CalendarsApi* | [**get_calendar**](docs/CalendarsApi.md#get_calendar) | **GET** /api/calendars/generic/{scope}/{code} | GetCalendar: Get a calendar in its generic form
|
270
83
|
*CalendarsApi* | [**get_dates**](docs/CalendarsApi.md#get_dates) | **GET** /api/calendars/generic/{scope}/{code}/dates | [EARLY ACCESS] GetDates: Get dates for a specific calendar
|
271
|
-
*CalendarsApi* | [**is_business_date_time**](docs/CalendarsApi.md#is_business_date_time) | **GET** /api/calendars/businessday/{scope}/{code} | [EARLY ACCESS] IsBusinessDateTime: Check whether a DateTime is a
|
84
|
+
*CalendarsApi* | [**is_business_date_time**](docs/CalendarsApi.md#is_business_date_time) | **GET** /api/calendars/businessday/{scope}/{code} | [EARLY ACCESS] IsBusinessDateTime: Check whether a DateTime is a \"Business DateTime\"
|
272
85
|
*CalendarsApi* | [**list_calendars**](docs/CalendarsApi.md#list_calendars) | **GET** /api/calendars/generic | [EARLY ACCESS] ListCalendars: List Calendars
|
273
86
|
*CalendarsApi* | [**list_calendars_in_scope**](docs/CalendarsApi.md#list_calendars_in_scope) | **GET** /api/calendars/generic/{scope} | ListCalendarsInScope: List all calenders in a specified scope
|
274
87
|
*CalendarsApi* | [**update_calendar**](docs/CalendarsApi.md#update_calendar) | **POST** /api/calendars/generic/{scope}/{code} | [EARLY ACCESS] UpdateCalendar: Update a calendar
|
@@ -318,6 +131,7 @@ Class | Method | HTTP request | Description
|
|
318
131
|
*ComplianceApi* | [**list_compliance_runs**](docs/ComplianceApi.md#list_compliance_runs) | **GET** /api/compliance/runs | [EARLY ACCESS] ListComplianceRuns: List historical compliance run identifiers.
|
319
132
|
*ComplianceApi* | [**list_compliance_templates**](docs/ComplianceApi.md#list_compliance_templates) | **GET** /api/compliance/templates | [EARLY ACCESS] ListComplianceTemplates: List compliance templates.
|
320
133
|
*ComplianceApi* | [**run_compliance**](docs/ComplianceApi.md#run_compliance) | **POST** /api/compliance/runs | [EARLY ACCESS] RunCompliance: Run a compliance check.
|
134
|
+
*ComplianceApi* | [**run_compliance_preview**](docs/ComplianceApi.md#run_compliance_preview) | **POST** /api/compliance/preview/runs | [EARLY ACCESS] RunCompliancePreview: Run a compliance check.
|
321
135
|
*ComplianceApi* | [**update_compliance_template**](docs/ComplianceApi.md#update_compliance_template) | **PUT** /api/compliance/templates/{scope}/{code} | [EARLY ACCESS] UpdateComplianceTemplate: Update a ComplianceRuleTemplate
|
322
136
|
*ComplianceApi* | [**upsert_compliance_rule**](docs/ComplianceApi.md#upsert_compliance_rule) | **POST** /api/compliance/rules | [EARLY ACCESS] UpsertComplianceRule: Upsert a compliance rule.
|
323
137
|
*ComplianceApi* | [**upsert_compliance_run_summary**](docs/ComplianceApi.md#upsert_compliance_run_summary) | **POST** /api/compliance/runs/summary | [EARLY ACCESS] UpsertComplianceRunSummary: Upsert a compliance run summary.
|
@@ -427,7 +241,7 @@ Class | Method | HTTP request | Description
|
|
427
241
|
*FundsApi* | [**list_funds**](docs/FundsApi.md#list_funds) | **GET** /api/funds | [EXPERIMENTAL] ListFunds: List Funds.
|
428
242
|
*FundsApi* | [**patch_fee**](docs/FundsApi.md#patch_fee) | **PATCH** /api/funds/{scope}/{code}/fees/{feeCode} | [EXPERIMENTAL] PatchFee: Patch Fee.
|
429
243
|
*FundsApi* | [**set_share_class_instruments**](docs/FundsApi.md#set_share_class_instruments) | **PUT** /api/funds/{scope}/{code}/shareclasses | [EXPERIMENTAL] SetShareClassInstruments: Set the ShareClass Instruments on a fund.
|
430
|
-
*FundsApi* | [**upsert_diary_entry_type_valuation_point**](docs/FundsApi.md#upsert_diary_entry_type_valuation_point) | **POST** /api/funds/{scope}/{code}/valuationpoints
|
244
|
+
*FundsApi* | [**upsert_diary_entry_type_valuation_point**](docs/FundsApi.md#upsert_diary_entry_type_valuation_point) | **POST** /api/funds/{scope}/{code}/valuationpoints | [EXPERIMENTAL] UpsertDiaryEntryTypeValuationPoint: Upsert Valuation Point.
|
431
245
|
*FundsApi* | [**upsert_fee_properties**](docs/FundsApi.md#upsert_fee_properties) | **POST** /api/funds/{scope}/{code}/fees/{feeCode}/properties/$upsert | [EXPERIMENTAL] UpsertFeeProperties: Upsert Fee properties.
|
432
246
|
*FundsApi* | [**upsert_fund_properties**](docs/FundsApi.md#upsert_fund_properties) | **POST** /api/funds/{scope}/{code}/properties/$upsert | [EXPERIMENTAL] UpsertFundProperties: Upsert Fund properties.
|
433
247
|
*InstrumentEventTypesApi* | [**create_transaction_template**](docs/InstrumentEventTypesApi.md#create_transaction_template) | **POST** /api/instrumenteventtypes/{instrumentEventType}/transactiontemplates/{instrumentType}/{scope} | [EXPERIMENTAL] CreateTransactionTemplate: Create Transaction Template
|
@@ -496,6 +310,7 @@ Class | Method | HTTP request | Description
|
|
496
310
|
*OrderInstructionsApi* | [**list_order_instructions**](docs/OrderInstructionsApi.md#list_order_instructions) | **GET** /api/orderinstructions | [EXPERIMENTAL] ListOrderInstructions: List OrderInstructions
|
497
311
|
*OrderInstructionsApi* | [**upsert_order_instructions**](docs/OrderInstructionsApi.md#upsert_order_instructions) | **POST** /api/orderinstructions | [EXPERIMENTAL] UpsertOrderInstructions: Upsert OrderInstruction
|
498
312
|
*OrderManagementApi* | [**book_transactions**](docs/OrderManagementApi.md#book_transactions) | **POST** /api/ordermanagement/booktransactions | [EXPERIMENTAL] BookTransactions: Books transactions using specific allocations as a source.
|
313
|
+
*OrderManagementApi* | [**cancel_orders**](docs/OrderManagementApi.md#cancel_orders) | **POST** /api/ordermanagement/cancelorders | [EARLY ACCESS] CancelOrders: Cancel existing orders
|
499
314
|
*OrderManagementApi* | [**cancel_placements**](docs/OrderManagementApi.md#cancel_placements) | **POST** /api/ordermanagement/$cancelplacements | [EARLY ACCESS] CancelPlacements: Cancel existing placements
|
500
315
|
*OrderManagementApi* | [**create_orders**](docs/OrderManagementApi.md#create_orders) | **POST** /api/ordermanagement/createorders | [EARLY ACCESS] CreateOrders: Upsert a Block and associated orders
|
501
316
|
*OrderManagementApi* | [**move_orders**](docs/OrderManagementApi.md#move_orders) | **POST** /api/ordermanagement/moveorders | [EARLY ACCESS] MoveOrders: Move orders to new or existing block
|
@@ -603,7 +418,7 @@ Class | Method | HTTP request | Description
|
|
603
418
|
*PropertyDefinitionsApi* | [**update_derived_property_definition**](docs/PropertyDefinitionsApi.md#update_derived_property_definition) | **PUT** /api/propertydefinitions/derived/{domain}/{scope}/{code} | [EARLY ACCESS] UpdateDerivedPropertyDefinition: Update a pre-existing derived property definition
|
604
419
|
*PropertyDefinitionsApi* | [**update_property_definition**](docs/PropertyDefinitionsApi.md#update_property_definition) | **PUT** /api/propertydefinitions/{domain}/{scope}/{code} | UpdatePropertyDefinition: Update property definition
|
605
420
|
*PropertyDefinitionsApi* | [**upsert_property_definition_properties**](docs/PropertyDefinitionsApi.md#upsert_property_definition_properties) | **POST** /api/propertydefinitions/{domain}/{scope}/{code}/properties | UpsertPropertyDefinitionProperties: Upsert properties to a property definition
|
606
|
-
*QueryableKeysApi* | [**get_all_queryable_keys**](docs/QueryableKeysApi.md#get_all_queryable_keys) | **GET** /api/queryablekeys | [EARLY ACCESS] GetAllQueryableKeys: Query the set of supported
|
421
|
+
*QueryableKeysApi* | [**get_all_queryable_keys**](docs/QueryableKeysApi.md#get_all_queryable_keys) | **GET** /api/queryablekeys | [EARLY ACCESS] GetAllQueryableKeys: Query the set of supported \"addresses\" that can be queried from all endpoints.
|
607
422
|
*QuotesApi* | [**delete_quote_access_metadata_rule**](docs/QuotesApi.md#delete_quote_access_metadata_rule) | **DELETE** /api/metadata/quotes/rules/{scope} | [EXPERIMENTAL] DeleteQuoteAccessMetadataRule: Delete a Quote Access Metadata Rule
|
608
423
|
*QuotesApi* | [**delete_quotes**](docs/QuotesApi.md#delete_quotes) | **POST** /api/quotes/{scope}/$delete | DeleteQuotes: Delete quotes
|
609
424
|
*QuotesApi* | [**get_quotes**](docs/QuotesApi.md#get_quotes) | **POST** /api/quotes/{scope}/$get | GetQuotes: Get quotes
|
@@ -620,7 +435,7 @@ Class | Method | HTTP request | Description
|
|
620
435
|
*ReconciliationsApi* | [**get_reconciliation_mapping**](docs/ReconciliationsApi.md#get_reconciliation_mapping) | **GET** /api/portfolios/mapping/{scope}/{code} | [EARLY ACCESS] GetReconciliationMapping: Get a mapping
|
621
436
|
*ReconciliationsApi* | [**list_reconciliation_mappings**](docs/ReconciliationsApi.md#list_reconciliation_mappings) | **GET** /api/portfolios/mapping | [EARLY ACCESS] ListReconciliationMappings: List the reconciliation mappings
|
622
437
|
*ReconciliationsApi* | [**list_reconciliations**](docs/ReconciliationsApi.md#list_reconciliations) | **GET** /api/portfolios/$scheduledReconciliations | [EXPERIMENTAL] ListReconciliations: List scheduled reconciliations
|
623
|
-
*ReconciliationsApi* | [**reconcile_generic**](docs/ReconciliationsApi.md#reconcile_generic) | **POST** /api/portfolios/$reconcileGeneric | ReconcileGeneric: Reconcile either holdings or valuations performed on one or two sets of holdings using one or two configuration recipes. The output is configurable for various types of comparisons, to allow tolerances on numerical and date-time data or case-insensitivity on strings, and elision of resulting differences where they are
|
438
|
+
*ReconciliationsApi* | [**reconcile_generic**](docs/ReconciliationsApi.md#reconcile_generic) | **POST** /api/portfolios/$reconcileGeneric | ReconcileGeneric: Reconcile either holdings or valuations performed on one or two sets of holdings using one or two configuration recipes. The output is configurable for various types of comparisons, to allow tolerances on numerical and date-time data or case-insensitivity on strings, and elision of resulting differences where they are 'empty' or null or zero.
|
624
439
|
*ReconciliationsApi* | [**reconcile_holdings**](docs/ReconciliationsApi.md#reconcile_holdings) | **POST** /api/portfolios/$reconcileholdings | [EARLY ACCESS] ReconcileHoldings: Reconcile portfolio holdings
|
625
440
|
*ReconciliationsApi* | [**reconcile_inline**](docs/ReconciliationsApi.md#reconcile_inline) | **POST** /api/portfolios/$reconcileInline | ReconcileInline: Reconcile valuations performed on one or two sets of inline instruments using one or two configuration recipes.
|
626
441
|
*ReconciliationsApi* | [**reconcile_transactions**](docs/ReconciliationsApi.md#reconcile_transactions) | **POST** /api/portfolios/$reconcileTransactions | [EARLY ACCESS] ReconcileTransactions: Perform a Transactions Reconciliation.
|
@@ -756,7 +571,8 @@ Class | Method | HTTP request | Description
|
|
756
571
|
*TranslationApi* | [**translate_trade_tickets**](docs/TranslationApi.md#translate_trade_tickets) | **POST** /api/translation/tradetickets | [EXPERIMENTAL] TranslateTradeTickets: Translate trade ticket
|
757
572
|
|
758
573
|
|
759
|
-
|
574
|
+
<a id="documentation-for-models"></a>
|
575
|
+
## Documentation for Models
|
760
576
|
|
761
577
|
- [A2BBreakdown](docs/A2BBreakdown.md)
|
762
578
|
- [A2BCategory](docs/A2BCategory.md)
|
@@ -850,10 +666,13 @@ Class | Method | HTTP request | Description
|
|
850
666
|
- [Calendar](docs/Calendar.md)
|
851
667
|
- [CalendarDate](docs/CalendarDate.md)
|
852
668
|
- [CalendarDependency](docs/CalendarDependency.md)
|
669
|
+
- [CancelOrdersResponse](docs/CancelOrdersResponse.md)
|
853
670
|
- [CancelPlacementsResponse](docs/CancelPlacementsResponse.md)
|
671
|
+
- [CancelledOrderResult](docs/CancelledOrderResult.md)
|
854
672
|
- [CancelledPlacementResult](docs/CancelledPlacementResult.md)
|
855
673
|
- [CapFloor](docs/CapFloor.md)
|
856
674
|
- [CapitalDistributionEvent](docs/CapitalDistributionEvent.md)
|
675
|
+
- [Cash](docs/Cash.md)
|
857
676
|
- [CashAndSecurityOfferElection](docs/CashAndSecurityOfferElection.md)
|
858
677
|
- [CashDependency](docs/CashDependency.md)
|
859
678
|
- [CashDividendEvent](docs/CashDividendEvent.md)
|
@@ -905,6 +724,7 @@ Class | Method | HTTP request | Description
|
|
905
724
|
- [ComplianceRuleTemplate](docs/ComplianceRuleTemplate.md)
|
906
725
|
- [ComplianceRuleUpsertRequest](docs/ComplianceRuleUpsertRequest.md)
|
907
726
|
- [ComplianceRuleUpsertResponse](docs/ComplianceRuleUpsertResponse.md)
|
727
|
+
- [ComplianceRunConfiguration](docs/ComplianceRunConfiguration.md)
|
908
728
|
- [ComplianceRunInfo](docs/ComplianceRunInfo.md)
|
909
729
|
- [ComplianceRunInfoV2](docs/ComplianceRunInfoV2.md)
|
910
730
|
- [ComplianceStep](docs/ComplianceStep.md)
|
@@ -918,6 +738,7 @@ Class | Method | HTTP request | Description
|
|
918
738
|
- [ComplianceTemplateVariation](docs/ComplianceTemplateVariation.md)
|
919
739
|
- [ComplianceTemplateVariationDto](docs/ComplianceTemplateVariationDto.md)
|
920
740
|
- [ComplianceTemplateVariationRequest](docs/ComplianceTemplateVariationRequest.md)
|
741
|
+
- [ComponentFilter](docs/ComponentFilter.md)
|
921
742
|
- [ComponentRule](docs/ComponentRule.md)
|
922
743
|
- [ComponentTransaction](docs/ComponentTransaction.md)
|
923
744
|
- [CompositeBreakdown](docs/CompositeBreakdown.md)
|
@@ -1085,12 +906,16 @@ Class | Method | HTTP request | Description
|
|
1085
906
|
- [ForwardRateAgreement](docs/ForwardRateAgreement.md)
|
1086
907
|
- [FromRecipe](docs/FromRecipe.md)
|
1087
908
|
- [Fund](docs/Fund.md)
|
909
|
+
- [FundAmount](docs/FundAmount.md)
|
1088
910
|
- [FundConfiguration](docs/FundConfiguration.md)
|
1089
911
|
- [FundConfigurationProperties](docs/FundConfigurationProperties.md)
|
1090
912
|
- [FundConfigurationRequest](docs/FundConfigurationRequest.md)
|
913
|
+
- [FundPnlBreakdown](docs/FundPnlBreakdown.md)
|
914
|
+
- [FundPreviousNAV](docs/FundPreviousNAV.md)
|
1091
915
|
- [FundProperties](docs/FundProperties.md)
|
1092
916
|
- [FundRequest](docs/FundRequest.md)
|
1093
917
|
- [FundShareClass](docs/FundShareClass.md)
|
918
|
+
- [FundValuationPointData](docs/FundValuationPointData.md)
|
1094
919
|
- [FundingLeg](docs/FundingLeg.md)
|
1095
920
|
- [FundingLegOptions](docs/FundingLegOptions.md)
|
1096
921
|
- [Future](docs/Future.md)
|
@@ -1398,7 +1223,11 @@ Class | Method | HTTP request | Description
|
|
1398
1223
|
- [PostingModuleResponse](docs/PostingModuleResponse.md)
|
1399
1224
|
- [PostingModuleRule](docs/PostingModuleRule.md)
|
1400
1225
|
- [PostingModuleRulesUpdatedResponse](docs/PostingModuleRulesUpdatedResponse.md)
|
1226
|
+
- [PreTradeConfiguration](docs/PreTradeConfiguration.md)
|
1401
1227
|
- [Premium](docs/Premium.md)
|
1228
|
+
- [PreviousFundValuationPointData](docs/PreviousFundValuationPointData.md)
|
1229
|
+
- [PreviousNAV](docs/PreviousNAV.md)
|
1230
|
+
- [PreviousShareClassBreakdown](docs/PreviousShareClassBreakdown.md)
|
1402
1231
|
- [PricingContext](docs/PricingContext.md)
|
1403
1232
|
- [PricingModel](docs/PricingModel.md)
|
1404
1233
|
- [PricingOptions](docs/PricingOptions.md)
|
@@ -1579,6 +1408,11 @@ Class | Method | HTTP request | Description
|
|
1579
1408
|
- [SetTransactionConfigurationAlias](docs/SetTransactionConfigurationAlias.md)
|
1580
1409
|
- [SetTransactionConfigurationSourceRequest](docs/SetTransactionConfigurationSourceRequest.md)
|
1581
1410
|
- [SettlementSchedule](docs/SettlementSchedule.md)
|
1411
|
+
- [ShareClassAmount](docs/ShareClassAmount.md)
|
1412
|
+
- [ShareClassBreakdown](docs/ShareClassBreakdown.md)
|
1413
|
+
- [ShareClassData](docs/ShareClassData.md)
|
1414
|
+
- [ShareClassDetails](docs/ShareClassDetails.md)
|
1415
|
+
- [ShareClassPnlBreakdown](docs/ShareClassPnlBreakdown.md)
|
1582
1416
|
- [SideConfigurationData](docs/SideConfigurationData.md)
|
1583
1417
|
- [SideConfigurationDataRequest](docs/SideConfigurationDataRequest.md)
|
1584
1418
|
- [SideDefinition](docs/SideDefinition.md)
|
@@ -1672,6 +1506,7 @@ Class | Method | HTTP request | Description
|
|
1672
1506
|
- [TriggerEvent](docs/TriggerEvent.md)
|
1673
1507
|
- [TypedResourceId](docs/TypedResourceId.md)
|
1674
1508
|
- [UnitSchema](docs/UnitSchema.md)
|
1509
|
+
- [UnitisationData](docs/UnitisationData.md)
|
1675
1510
|
- [UnitsRatio](docs/UnitsRatio.md)
|
1676
1511
|
- [UnmatchedHoldingMethod](docs/UnmatchedHoldingMethod.md)
|
1677
1512
|
- [UpdateAmortisationRuleSetDetailsRequest](docs/UpdateAmortisationRuleSetDetailsRequest.md)
|
@@ -1769,23 +1604,3 @@ Class | Method | HTTP request | Description
|
|
1769
1604
|
- [YieldCurveData](docs/YieldCurveData.md)
|
1770
1605
|
|
1771
1606
|
|
1772
|
-
<a id="documentation-for-authorization"></a>
|
1773
|
-
## Documentation For Authorization
|
1774
|
-
|
1775
|
-
|
1776
|
-
Authentication schemes defined for the API:
|
1777
|
-
<a id="oauth2"></a>
|
1778
|
-
### oauth2
|
1779
|
-
|
1780
|
-
- **Type**: OAuth
|
1781
|
-
- **Flow**: implicit
|
1782
|
-
- **Authorization URL**: https://lusid.okta.com/oauth2/default/v1/authorize
|
1783
|
-
- **Scopes**: N/A
|
1784
|
-
|
1785
|
-
|
1786
|
-
## Author
|
1787
|
-
|
1788
|
-
info@finbourne.com
|
1789
|
-
|
1790
|
-
|
1791
|
-
|