0
  1. Does bloomberg provide any endpoints for calling API? If yes then please provide the url.
  2. Can we call bloomberg api without logged-in into bloomberg terminal using python?

I was tried but I can not find the satisfy solution.

assylias
  • 321,522
  • 82
  • 660
  • 783
Ayush Banga
  • 289
  • 4
  • 4
  • 1
    Contact Bloomberg's sales team for information on subscriptions. They will be able to satisfy your requirements ... assuming you don't want something for nothing. – Stephen C Dec 28 '22 at 07:27
  • 1. No... 2. No... – assylias Dec 29 '22 at 11:26
  • @ayush It would be helpful if you were more explicit in your question - Bloomberg provides many different types of data and there are different endpoints/access methods for each - was there something specific you were looking for? That said, there are definitely "no free lunches" with Bloomberg so you will almost certainly need to be a subscriber to access their data. – paytools-steve Jan 06 '23 at 07:45

1 Answers1

2

Bloomberg has a number of product offerings, and dependent on the product offering they have specific "endpoints". For static/reference data, very much a request/response (best endeavours/non-deterministic), they have SFTP, REST and WebServices/SOAP.

If you want their API that is deemed "real-time", the "I want it now" API, then you'll want the BLP API access to their services. This API is a microservice based API. They have microservices for streaming marketdata (//blp/mktdata), requesting static reference (//blp/refdata), contributing OTC pricing (//firm/c-gdco), submitting orders (//blp/emsx), etc etc. The API supports a number of languages including Python, Perl, C++, .NET, etc. The API pattern requires setting up a session where you 'target'/connect to a delivery (end) point.

There are several flavours of delivery (end) points depending on what Bloomberg products you buy. For the Bloomberg (Professional) Terminal, you have something called Desktop API (DAPI), they have something called the Server (SAPI), they have something called B-PIPE, another is EMSX. They all present delivery (end) points. They all support the same BLP API.

The Bloomberg Terminal's delivery point is localhost:8194. No Bloomberg Terminal, no localhost delivery point. However, maybe your organisation has bought an Enterprise B-PIPE product, in which case you don't need a Bloomberg Terminal, and the delivery point will sit on at least two servers (IPs), again on port 8194.

If you're what is classed an ISV/3rd Party vendor, then you can request/pay for cost-effective end points to develop software.

Specifically in response to your questions;

  1. URLs would be valid for the REST and WebServices/SOAP interfaces, and whilst they're easily obtainable, your IP address needs to be whitelisted in order to access them (and pay fees). The BLP API is an Application Binary Interface (ABI) and works on IP/DNS address endpoints, not URLs.

  2. Yes, you can call the API endpoint, in whatever language you want, without being logged into a Terminal, assuming, you have access to a Delivery (End) Point, eg B-PIPE. The Bloomberg Terminal is just one of many different types of Delivery (End) Points.

So, bottom line, the API library is readily available from https://bloomberg.com and you can develop against it. Problem is, the first few lines of creating a session object and connecting to the delivery end point will fail unless you have a Bloomberg product. There's no sandbox, sadly.

Another option is to google "bloomberg api simulator" and run against those. They will nominally you get you up and running, but not very far.

Apologies for replicating part of "Subscription fees to use blpapi package" answer

DaveDotNet
  • 196
  • 6