Storing large amounts of information in properties

You can store approximately 500,000 characters in a property providing the property type to which it belongs:

  • Has a constraintStyle of Property.

  • Uses the built-in unindexedText data type.

As the name suggests, LUSID does not index unindexedText properties, so you cannot perform filter operations on them.

For example, to create a property type representing a fund prospectus for portfolio entities:

curl -X POST "https://<your-domain>.lusid.com/api/api/propertydefinitions"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json-patch+json"
  -d '{
    "domain": "Portfolio",
    "scope": "Ibor",
    "code": "FundProspectus",
    "displayName": "Fund Prospectus",
    "dataTypeId": {"scope": "system", "code": "unindexedText"},
    "lifeTime": "TimeVariant",
    "constraintStyle": "Property",
    "propertyDescription": "The prospectus issued by the fund for the current period"
  }'

To attach a property of this type with a large string value to a particular transaction portfolio when you create it:

curl -X POST "https://<your-domain>.lusid.com/api/api/transactionportfolios/examplescope"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json-patch+json"
  -d '{
    "displayName": "Portfolio UK",
    "code": "PortfolioUK",
    "baseCurrency": "GBP",
    "properties": {
      "Portfolio/Ibor/FundProspectus": {
        "key": "Portfolio/Ibor/FundProspectus",
        "value": {
          "labelValue": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum..."
        },
        "effectiveFrom": "2023-01-01T12:00:00.0000000+00:00"
      }
    }
  }'

Note that unindexedText properties must always be created as label values.