Bloomberg API

2025-03-15

Bloomberg API Service Endpoint Reference Table

Service Endpoint Communication Pattern Description
Reference Data (core) //blp/refdata Request/Response Request reference data such as pricing, historical time series, intraday bars, and tick data.
Market Data (core) //blp/mktdata Subscription Subscribe to real-time and delayed market data streams.
Static Market Data //blp/staticmktdata Request/Response Request current-value snapshots for security/field pairs.
Intraday Bar Data //blp/mktbar Subscription Subscribe to real-time intraday bar data streams (e.g., 1-minute/5-minute bars).
Source Reference Data //blp/srcref Subscription Subscribe to source reference identifiers and minimum tick size data under the entitled permissions.
API Field Information //blp/apiflds Request/Response Query the API field dictionary, similar to the terminal FLDS<GO> command.
Instrument Search //blp/instruments Request/Response Run queries for securities, yield curves, and government bonds.

| Page Data | //blp/pagedata | Subscription | Subscribe to contributor pages and the data they contain (e.g., custom Bloomberg terminal pages). | | Volume-Weighted Average Price (VWAP) | //blp/mktvwap | Subscription | Subscribe to custom volume-weighted average price (VWAP) data streams. | | Technical Analysis | //blp/tascvc | Request/Response | Download analytics data and integrate it into applications via BLPAPI. |

Key concepts

  1. Communication patterns

    • Request/Response: one-shot synchronous data pull (suited to low-frequency queries)
    • Subscription: continuous asynchronous data push (suited to real-time monitoring)
  2. Typical use cases

    • //blp/mktbar: real-time bar analysis for high-frequency trading
    • //blp/apiflds: quickly look up field names and metadata during development
    • //blp/srcref: monitor changes to raw exchange data feeds
  3. Data coverage

    • //blp/refdata supports historical lookbacks (e.g., startDate=20200101)
    • //blp/mktvwap supports custom VWAP calculation windows (e.g., 30-minute/full-day)

Below is a detailed breakdown of each Bloomberg API service endpoint and how to retrieve its fields:


1. Reference Data (core)//blp/refdata

  • Function: Retrieve a security's static/dynamic data (e.g., prices, fundamentals), historical time series (e.g., historical closes), and intraday tick data.
  • How to get the fields:
    • Send a ReferenceDataRequest, specifying:
      • securities: security identifiers (e.g., "AAPL US Equity")
      • fields: field IDs (e.g., "PX_LAST" for last price)
      • optional parameters (e.g., startDate/endDate for historical data)
    • Example fields: PX_LAST (last price), VOLUME (volume), BID (bid), ASK (ask)

2. Market Data (core)//blp/mktdata

  • Function: Subscribe in real time to a security's quote data (stocks, futures, FX, etc.).
  • How to get the fields:
    • Send a Subscription request, specifying:
      • security: security identifier
      • fields: real-time fields (e.g., BID, ASK, LAST_PRICE)
    • Example fields: LAST_PRICE (last trade price), BID, ASK, VOLUME

3. Source Reference Data//blp/srcref

  • Function: Retrieve a security's underlying data source information (e.g., exchange code, minimum tick size).
  • How to get the fields:
    • Requires special entitlements; send a subscription request with fields such as:
      • SRC_ID (data source ID), MIN_MOVEMENT (minimum tick size)

4. Volume-Weighted Average Price (VWAP)//blp/mktvwap

  • Function: Subscribe to real-time VWAP data over custom time windows.
  • How to get the fields:
    • Send a subscription request, specifying:
      • security: security identifier
      • interval: time window (e.g., 1D for daily VWAP)
    • Example fields: VWAP (current VWAP value)

5. Intraday Bar Data//blp/mktbar

  • Function: Subscribe to intraday bars (e.g., 1-minute/5-minute bars).
  • How to get the fields:
    • Send a subscription request, specifying:
      • security: security identifier
      • barInterval: interval (e.g., 1 minute)
    • Example fields: OPEN, HIGH, LOW, CLOSE, VOLUME

6. Static Market Data//blp/staticmktdata

  • Function: Retrieve a security's current static snapshot (not real-time).
  • How to get the fields:
    • Send a StaticMarketDataRequest, specifying the security and fields (e.g., PX_LAST)

7. API Field Information//blp/apiflds

  • Function: Query field metadata (e.g., descriptions and data types).
  • How to get the fields:
    • Send a FieldInfoRequest, specifying field IDs or names:
      • For example, query the description and data type of PX_LAST.

8. Instrument Search//blp/instruments

  • Function: Search for securities, yield curves, or government bonds.
  • How to get the fields:
    • Send an InstrumentListRequest with search criteria (e.g., "EQS" to search for stocks)

9. Page Data//blp/pagedata

  • Function: Subscribe to custom page data from the Bloomberg terminal (e.g., market overview pages).
  • How to get the fields:
    • Send a subscription request specifying the pageId (e.g., "MKT1" for the market overview page)

10. Technical Analysis//blp/tascvc

  • Function: Download technical indicator data (e.g., moving averages, RSI).
  • How to get the fields:
    • Send a TechnicalAnalysisRequest, specifying the security, indicator type (e.g., MA), and parameters (e.g., period)

General workflow for retrieving fields

  1. Define the requirement: identify the data type you need (real-time/historical, price/fundamentals, etc.).
  2. Choose the endpoint: match the service endpoint to the need (e.g., //blp/refdata for historical data).
  3. Look up field information: confirm field IDs and descriptions via //blp/apiflds.
  4. Build the request:
    • Request/response mode (e.g., //blp/refdata): send a one-off request.
    • Subscription mode (e.g., //blp/mktdata): keep a long-lived connection to receive real-time data.
  5. Process the data: parse the response or subscription stream and extract the target field values.

Key considerations

  • Field naming: Bloomberg fields are usually abbreviated (e.g., PX_LAST); look them up via apiflds.
  • Entitlements: some endpoints (e.g., srcref) require extra permissions that must be enabled by Bloomberg.
  • Data formats: field values can be numbers, strings, or complex structures (e.g., tick data).