Using Bloomberg DLPS Luminesce providers to import data

Prev Next

LUSID offers the following Luminesce providers that enable you to build bespoke Bloomberg DLPS data import flows:

  • Bloomberg.DataLicensePerSecurity.Request.BloombergValuation

  • Bloomberg.DataLicensePerSecurity.Request.CorporateActions

  • Bloomberg.DataLicensePerSecurity.Request.CurrentData

  • Bloomberg.DataLicensePerSecurity.Request.EntityData

  • Bloomberg.DataLicensePerSecurity.Request.HistoricalData

  • Bloomberg.DataLicensePerSecurity.Request.PricingSnapshot

  • Bloomberg.DataLicensePerSecurity.Request.TickHistory

  • Bloomberg.DataLicensePerSecurity.DownloadableResponse.Data

Additionally, you can use the following providers for instrument processing and mastering:

  • Bloomberg.Instrument.Mapping: Generates a LUSID instrument definition using instrument data from Bloomberg

  • Bloomberg.Instrument.Mapping.RequiredFields: Retrieves the minimum set of Bloomberg field mnemonics required for instrument determination and mapping with the Bloomberg.Instrument.Mapping provider

  • Bloomberg.InstrumentEvent.Mapping: Generates a LUSID instrument event definition using corporate action data from Bloomberg. Supported Bloomberg action type mnemonics: DVD_CASH, DVD_STOCK, SPIN, STOCK_SPLT

See how to use the Integrations dashboard to enrich existing instruments.

Setting up credentials for Luminesce data providers

Before getting started with the Luminesce data providers, you must supply your Bloomberg credentials in LUSID.

Step 1: Obtain Bloomberg application credentials

If you haven’t previously done so, follow these steps to obtain your Bloomberg application client_id and client_secret.

Step 2: Add your credentials to the Configuration Store

  1. Sign in to LUSID and navigate to System Settings > Configuration Store.

  2. Select the Shared keys tab.

  3. Locate and Edit the configuration set with scope Luminesce-Provider and code Bloomberg.

  4. Provide your ClientId and ClientSecret values from step 1.

  5. Click Save.

You can check your credentials are correct by navigating to Data Virtualisation > Query Editor and sending the following query:

@@requestId = SELECT 'Test' || SUBSTR(generate_hash('SHA1', datetime('now')), 0, 10);
@instruments = SELECT 'ISIN' AS IdentifierType,'INVALID_ISIN' AS IdentifierValue;
SELECT  *
FROM    Bloomberg.DataLicensePerSecurity.Request.CurrentData
WHERE   Universe = @instruments
        AND FieldList = 'NAME'
        AND Identifier = @@requestId
        AND Title = 'Test Connection'
        AND SubmitImmediately = true
        AND NotificationWaitSecs = 30;

You should receive a response containing a RequestId and ErrorCode of 0. This confirms your connection is working.

Running the integration

You can use Luminesce to build custom queries and bespoke data imports using the relevant data providers. Each custom query should follow this basic outline:

  1. Use the Bloomberg.DataLicensePerSecurity.Request.<x> providers to create a bespoke request to Bloomberg.

  2. Once Bloomberg produces your requested data, use Bloomberg.DataLicensePerSecurity.DownloadableResponse.Data to download the data for onward processing into LUSID.


Troubleshooting connection issues

unauthorized-client error

The following error indicates you are missing an IP address from your whitelisted IPs within the Bloomberg Enterprise Console LUSID application you created in step 1:

Failed when calling Bloomberg HAPI:
...
Errored with : Unauthorized
Details : {"errors":[{...
                      "errorCode":"unauthorized-client",
                      "status":401,
                      "detail":"Invalid IP, IP 123.12.123.12 not whitelisted"}],
                      "error":"unauthorized_client"}

No config found error

Query Execution failed.
'No config found in the Configuration Store under 'Bloomberg''

If you experience this error, verify that you’ve entered your Bloomberg credentials in the correct configuration set:

  • Scope: Luminesce-Provider

  • Code: Bloomberg

ClientId/ClientSecret has not been set error

Invalid configuration. ClientId has not been set.
Invalid configuration. ClientSecret has not been set.

If you experience this error, check that you’ve entered your Bloomberg credentials correctly in the Configuration Store.

403 (Forbidden) error

Response status code does not indicate success: 403 (Forbidden).

If you experience this error, check the values you’ve entered for your Bloomberg credentials in the Configuration Store are correct.