Views:

Related resources:

Explanation

Tutorials

Reference

Providing you are a LUSID user with sufficient privileges, you can search or filter the LUSID instrument master to find a particular financial asset.

Note: If you are the LUSID domain owner, you are automatically assigned the built-in lusid-administrator role, which has all the permissions necessary to perform the operations in this article.

Note your LUSID instrument master may be partitioned into scopes. If so, then you must specify the scope in which to search; if you do not, LUSID searches only the built-in default scope. If you have partitioned your instrument master, it is not possible to search across all scopes. Note currency instruments can only exist in the default scope.

Note: If you have a Luminesce license, you can also write SQL queries to find instruments representing different asset classes.

Using the LUSID REST API

To call any LUSID API, you must obtain an API access token.

Listing instruments in the built-in default scope

To list all the instruments mastered in LUSID, call the LUSID ListInstruments API for your domain, passing in your API access token. Note only 100 instruments are returned per page by default; to increase this to the maximum per page, specify a limit of 2000:

curl -X GET "https://<your-domain>.lusid.com/api/api/instruments?limit=2000"
   -H "Authorization: Bearer <your-API-access-token>"

To list all the instruments that are not currencies, apply a filter of identifiers['Currency'] not exists:

curl -X GET "https://<your-domain>.lusid.com/api/api/instruments?limit=2000&filter=identifiers%5B%27Currency%27%5D%20not%20exists"
   -H "Authorization: Bearer <your-API-access-token>"

To list all the deactivated instruments, apply a filter of State eq 'Inactive':

curl -X GET "https://<your-domain>.lusid.com/api/api/instruments?limit=2000&filter=State%20eq%20%27Inactive%27"
   -H "Authorization: Bearer <your-API-access-token>"

Listing instruments in a custom scope

Call the LUSID ListInstruments API for your domain, passing in your API access token and the name of the scope:

curl -X GET "https://<your-domain>.lusid.com/api/api/instruments?scope=mysecretscope"
   -H "Authorization: Bearer <your-API-access-token>"

Retrieving a particular instrument

To get a particular instrument, call the LUSID GetInstrument API, passing in a unique identifier type and value, for example a FIGI or LUID:

curl -X GET "https://<your-domain>.lusid.com/api/api/instruments/Figi/BBG000C05BD1"
   -H "Authorization: Bearer <your-API-access-token>"

Searching LUSID and OpenFIGI simultaneously

You can search both the LUSID instrument master and the OpenFIGI database simultaneously. This has the advantage of enabling you to quickly populate the LUSID instrument master from OpenFIGI if a particular instrument is found in the latter but not in the former. To do this, call the LUSID SearchInstruments API, passing in a FIGI unique identifier type and value:

curl -X POST "https://<your-domain>.lusid.com/api/api/search/instruments"
  -H "Authorization: Bearer <your-API-access-token>"
  -H "Content-Type: application/json"
  -d '[ { "key": "Instrument/default/Figi", "value": "BBG000C05BD1" } ]'

In this example, the response within the externalInstruments list is ready to be upserted using the LUSID UpsertInstruments API:

[
   {
       "masteredInstruments": [],
       "externalInstruments": [
           {
               "name": "BP PLC",
               "identifiers": {
                   "Figi": {
                       "value": "BBG000C05BD1",
                       "effectiveAt": "0001-01-01T00:00:00.0000000+00:00"
                   }
               },
               "properties": [
                   {
                       "key": "Instrument/default/CompositeFigi",
                       "value": {
                           "labelValue": "BBG000C059M6"
                       },
                       "effectiveFrom": "0001-01-01T00:00:00.0000000+00:00"
                   },
                   {
                       "key": "Instrument/default/ShareClassFigi",
                       "value": {
                           "labelValue": "BBG001S61CN0"
                       },
                       "effectiveFrom": "0001-01-01T00:00:00.0000000+00:00"
                   },
                   {
                       "key": "Instrument/default/Ticker",
                       "value": {
                           "labelValue": "BP/"
                       },
                       "effectiveFrom": "0001-01-01T00:00:00.0000000+00:00"
                   }
               ]
           }
       ]
   }
]

Using the LUSID web app

Sign in to the LUSID web app using the credentials of a LUSID administrator. You can enter a term in the instrument search box (top left):


 

Alternatively, you can select Data Management > Instruments from the left-hand menu to navigate to the Instruments dashboard, and enter a term in any column header to start filtering the instrument list.

Note that to see the dashboard as it is here, with the unique and non-unique identifiers displayed in columns, click the Configuration cog (top right) and choose to add columns consisting of all the instrument identifiers. Identifiers with a * in the column header are unique: