You can retrieve properties for entities of a particular type in LUSID using Get* and List* APIs specific to that entity type.
For example, you can call the GetHoldings API to generate a holdings report and specify the propertyKeys parameter to 'decorate' any number of properties from the native Holding domain onto the response. A property in the Holding domain is one whose underlying property type has a 3-stage key in the format Holding/<scope>/<code>.
Consider the following example using the equivalent get_holdings method in the Python SDK, where the syntax is easier to understand:
get_holdings_response = transaction_portfolios_api.get_holdings(
scope = "Finbourne-Examples",
code = "UK-Equities",
property_keys = ["Holding/Ibor/CurrentMarketValue"],
)For some entity types, you can also retrieve properties from other domains. For example, for holdings you can retrieve properties from the Instrument and Portfolio domains as well as Holding. Consider the following example, in which a holdings report is enriched with the friendly names of instruments and their countries of origin, and portfolio manager names:
get_holdings_response = transaction_portfolios_api.get_holdings(
scope = "Finbourne-Examples",
code = "UK-Equities",
property_keys = ["Holding/Ibor/CurrentMarketValue", "Instrument/default/Name", "Instrument/Tax/Country", "Portfolio/Manager/Name"],
)Note: Properties such as
Instrument/default/Namethat are in the protecteddefaultandsystemscopes are system properties. LUSID may automatically decorate relevant system properties ontoGet*andList*API responses.
Entity type | Native property domain | Other retrievable property domains | Notes |
| Any that support relationships. More information. | ||
| Any that support relationships. | ||
| Any that support relationships. | ||
|
| Also properties in the | |
|
| ||
|
| ||
| Journal entry lines do not have a property domain of their own. | ||
Any that support relationships. | Custom entities do not have a property domain of their own. However, you can decorate properties from related entities onto custom entities. | ||
| Any that support relationships. | ||
| Any that support relationships. |
To see whether a particular API supports this behavior, examine the LUSID API documentation and look for a propertyKeys or similar query parameter. The explanation should state which property domains can be retrieved, in this case the GetHoldingsWithOrders API:
