openapi: 3.1.0
info:
title: Refinitiv Data Platform (RDP) APIs
description: >-
Cloud-enabled RESTful API providing access to streaming and non-streaming
financial data, news, research, and analytics. It serves as the primary
programmatic interface to the breadth of Refinitiv content on the LSEG Data
Platform, including historical pricing, ESG data, news, quantitative
analytics, symbology, and search services.
version: '1.0.0'
contact:
name: LSEG Developer Support
url: https://developers.lseg.com/en/support
termsOfService: https://developers.lseg.com/en/terms-and-conditions
externalDocs:
description: Refinitiv Data Platform API Documentation
url: https://developers.lseg.com/en/api-catalog/refinitiv-data-platform/refinitiv-data-platform-apis/documentation
servers:
- url: https://api.refinitiv.com
description: Production Server
tags:
- name: Authentication
description: >-
OAuth 2.0 token management for obtaining and refreshing access tokens
required by all other API endpoints.
- name: ESG
description: >-
Environmental, Social, and Governance data including scores, measures,
carbon emissions, and controversy tracking across thousands of companies.
- name: Historical Pricing
description: >-
Access to historical interday and intraday pricing data for financial
instruments including summaries, events, and time series.
- name: News
description: >-
Access to real-time and historical news headlines and stories from
Reuters and other sources.
- name: Pricing
description: >-
Real-time and delayed snapshot pricing data for financial instruments
and pricing chains.
- name: Quantitative Analytics
description: >-
Instrument Pricing Analytics (IPA) service for pricing financial
contracts, calculating risk measures, and running quantitative models.
- name: Search
description: >-
Discovery and search across organizations, instruments, quotes, and
economic indicators.
- name: Streaming
description: >-
Service discovery for streaming connections to real-time pricing
and data services.
- name: Symbology
description: >-
Symbol lookup and conversion between different identifier types
including RIC, ISIN, CUSIP, SEDOL, and PermID.
security:
- bearerAuth: []
paths:
/auth/oauth2/v1/token:
post:
operationId: getToken
summary: Request Access Token
description: >-
Obtains an OAuth 2.0 access token using password grant or refresh token
grant. The access token is required for all subsequent API calls and is
valid for five minutes. The response also includes a refresh token that
can be used to obtain new access tokens without re-authenticating.
tags:
- Authentication
security: []
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
required:
- client_id
- grant_type
properties:
username:
type: string
description: >-
The user's machine account username. Required for password
grant type.
password:
type: string
description: >-
The user's machine account password. Required for password
grant type.
client_id:
type: string
description: >-
The application client ID provided during registration.
grant_type:
type: string
description: >-
The OAuth 2.0 grant type. Use password for initial
authentication or refresh_token for token renewal.
enum:
- password
- refresh_token
refresh_token:
type: string
description: >-
The refresh token from a previous authentication. Required
for refresh_token grant type.
scope:
type: string
description: >-
The scope of access requested. Each RDP resource has a
permission scope assigned to it.
takeExclusiveSignOnControl:
type: string
description: >-
When set to true, forces sign-on even if another session
exists for the same credentials.
enum:
- 'true'
- 'false'
responses:
'200':
description: Successful authentication
content:
application/json:
schema:
$ref: '#/components/schemas/TokenResponse'
'400':
description: Invalid request parameters
'401':
description: Invalid credentials
/data/historical-pricing/v1/views/interday-summaries/{universe}:
get:
operationId: getInterdaySummaries
summary: Get Interday Pricing Summaries
description: >-
Retrieves historical interday pricing summaries for a given instrument,
including open, high, low, close, and volume data points. Supports
date range filtering and adjustments for corporate actions.
tags:
- Historical Pricing
parameters:
- $ref: '#/components/parameters/universe'
- name: start
in: query
description: >-
Start date for the historical data range in ISO 8601 format.
schema:
type: string
format: date
- name: end
in: query
description: >-
End date for the historical data range in ISO 8601 format.
schema:
type: string
format: date
- name: count
in: query
description: >-
Maximum number of data points to return.
schema:
type: integer
- name: adjustments
in: query
description: >-
Comma-separated list of adjustment types to apply such as
exchangeCorrection and capitalChange.
schema:
type: string
responses:
'200':
description: Historical pricing data returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricalPricingResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
'404':
description: Instrument not found
/data/historical-pricing/v1/views/intraday-summaries/{universe}:
get:
operationId: getIntradaySummaries
summary: Get Intraday Pricing Summaries
description: >-
Retrieves historical intraday pricing summaries for a given instrument
at configurable intervals. Returns time-stamped OHLCV bars for the
requested period.
tags:
- Historical Pricing
parameters:
- $ref: '#/components/parameters/universe'
- name: start
in: query
description: >-
Start date-time for the data range in ISO 8601 format.
schema:
type: string
format: date-time
- name: end
in: query
description: >-
End date-time for the data range in ISO 8601 format.
schema:
type: string
format: date-time
- name: interval
in: query
description: >-
The interval between data points such as PT1M, PT5M, PT1H.
schema:
type: string
- name: count
in: query
description: >-
Maximum number of data points to return.
schema:
type: integer
responses:
'200':
description: Intraday pricing data returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricalPricingResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
'404':
description: Instrument not found
/data/historical-pricing/v1/views/events/{universe}:
get:
operationId: getHistoricalPricingEvents
summary: Get Historical Pricing Events
description: >-
Retrieves historical trade and quote events for a given instrument,
providing tick-level data for detailed analysis of market activity.
tags:
- Historical Pricing
parameters:
- $ref: '#/components/parameters/universe'
- name: start
in: query
description: >-
Start date-time for the data range in ISO 8601 format.
schema:
type: string
format: date-time
- name: end
in: query
description: >-
End date-time for the data range in ISO 8601 format.
schema:
type: string
format: date-time
- name: count
in: query
description: >-
Maximum number of events to return.
schema:
type: integer
responses:
'200':
description: Historical pricing events returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricalPricingResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
'404':
description: Instrument not found
/data/pricing/snapshots/v1/:
get:
operationId: getPricingSnapshots
summary: Get Pricing Snapshots
description: >-
Retrieves real-time or delayed pricing snapshots for one or more
financial instruments. Returns the latest available price data
including bid, ask, last trade, and volume.
tags:
- Pricing
parameters:
- name: universe
in: query
required: true
description: >-
Comma-separated list of instrument identifiers such as RICs.
schema:
type: string
- name: fields
in: query
description: >-
Comma-separated list of specific fields to return.
schema:
type: string
responses:
'200':
description: Pricing snapshot data returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/PricingSnapshotResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
/pricing/chains/v1/:
get:
operationId: getPricingChains
summary: Get Pricing Chains
description: >-
Retrieves constituent instruments for a pricing chain such as an
options chain or futures chain identified by its chain RIC.
tags:
- Pricing
parameters:
- name: universe
in: query
required: true
description: >-
The chain RIC identifier.
schema:
type: string
responses:
'200':
description: Chain constituents returned successfully
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: object
description: >-
Chain constituent data.
'400':
description: Invalid request parameters
'401':
description: Unauthorized
'404':
description: Chain not found
/data/news/v1/headlines:
get:
operationId: getNewsHeadlines
summary: Get News Headlines
description: >-
Retrieves news headlines matching the specified query criteria.
Supports filtering by topic, instrument, date range, and other
parameters. Returns headline text, timestamp, and story identifiers.
tags:
- News
parameters:
- name: query
in: query
required: true
description: >-
The news search query string supporting keyword search and
advanced query syntax.
schema:
type: string
- name: count
in: query
description: >-
Maximum number of headlines to return.
schema:
type: integer
- name: cursor
in: query
description: >-
Pagination cursor for retrieving the next page of results.
schema:
type: string
responses:
'200':
description: News headlines returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/NewsHeadlinesResponse'
'400':
description: Invalid query parameters
'401':
description: Unauthorized
/data/news/v1/stories/{storyId}:
get:
operationId: getNewsStory
summary: Get News Story
description: >-
Retrieves the full text and metadata for a specific news story
identified by its story ID.
tags:
- News
parameters:
- name: storyId
in: path
required: true
description: >-
The unique identifier of the news story.
schema:
type: string
responses:
'200':
description: News story returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/NewsStory'
'401':
description: Unauthorized
'404':
description: Story not found
/data/environmental-social-governance/v1/views/basic:
get:
operationId: getEsgBasic
summary: Get Basic ESG Scores
description: >-
Retrieves basic Environmental, Social, and Governance scores for
one or more companies. Returns overall ESG scores and individual
pillar scores.
tags:
- ESG
parameters:
- name: universe
in: query
required: true
description: >-
Comma-separated list of instrument identifiers.
schema:
type: string
responses:
'200':
description: ESG scores returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/EsgResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
/data/environmental-social-governance/v1/views/measures-full:
get:
operationId: getEsgMeasuresFull
summary: Get Full ESG Measures
description: >-
Retrieves comprehensive ESG measures including detailed environmental,
social, and governance metrics, carbon emissions data, green revenue
metrics, and controversy tracking for one or more companies.
tags:
- ESG
parameters:
- name: universe
in: query
required: true
description: >-
Comma-separated list of instrument identifiers.
schema:
type: string
- name: start
in: query
description: >-
Start year for historical ESG data.
schema:
type: string
- name: end
in: query
description: >-
End year for historical ESG data.
schema:
type: string
responses:
'200':
description: ESG measures returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/EsgResponse'
'400':
description: Invalid request parameters
'401':
description: Unauthorized
/data/quantitative-analytics/v1/financial-contracts:
post:
operationId: calculateFinancialContracts
summary: Calculate Financial Contracts
description: >-
Submits financial contract definitions to the Instrument Pricing
Analytics (IPA) engine for pricing, risk calculation, and
quantitative analysis. Supports bonds, swaps, options, and other
derivative instruments.
tags:
- Quantitative Analytics
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FinancialContractRequest'
responses:
'200':
description: Calculation results returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/FinancialContractResponse'
'400':
description: Invalid contract definition
'401':
description: Unauthorized
/discovery/symbology/v1/convert:
post:
operationId: convertSymbology
summary: Convert Symbology Identifiers
description: >-
Converts financial instrument identifiers between different symbology
types such as RIC, ISIN, CUSIP, SEDOL, ticker, and PermID. Supports
batch conversion of multiple identifiers in a single request.
tags:
- Symbology
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SymbologyConvertRequest'
responses:
'200':
description: Symbology conversion results returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/SymbologyConvertResponse'
'400':
description: Invalid request
'401':
description: Unauthorized
/discovery/search/v1/:
post:
operationId: searchInstruments
summary: Search for Instruments
description: >-
Searches across organizations, instruments, quotes, and economic
indicators. Supports complex query expressions and filtering by
asset class, exchange, country, and other attributes.
tags:
- Search
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SearchRequest'
responses:
'200':
description: Search results returned successfully
content:
application/json:
schema:
$ref: '#/components/schemas/SearchResponse'
'400':
description: Invalid search query
'401':
description: Unauthorized
/streaming/pricing/v1/:
get:
operationId: getStreamingEndpoints
summary: Discover Streaming Endpoints
description: >-
Retrieves available streaming service endpoints for establishing
WebSocket connections to real-time pricing data. Returns endpoint
URIs and port information for connecting to the Real-Time Optimized
streaming service.
tags:
- Streaming
responses:
'200':
description: Streaming endpoints returned successfully
content:
application/json:
schema:
type: object
properties:
services:
type: array
items:
type: object
properties:
endpoint:
type: string
description: >-
The WebSocket endpoint URI.
port:
type: integer
description: >-
The port number for the streaming connection.
provider:
type: string
description: >-
The streaming service provider.
dataFormat:
type: string
description: >-
The data format used by the streaming endpoint.
'401':
description: Unauthorized
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: >-
OAuth 2.0 Bearer token obtained from the /auth/oauth2/v1/token
endpoint. Access tokens are valid for five minutes.
parameters:
universe:
name: universe
in: path
required: true
description: >-
The instrument identifier, typically a RIC such as IBM.N or AAPL.O.
schema:
type: string
schemas:
TokenResponse:
type: object
properties:
access_token:
type: string
description: >-
The OAuth 2.0 access token to use in subsequent API requests.
refresh_token:
type: string
description: >-
Token used to obtain a new access token without re-authenticating.
expires_in:
type: integer
description: >-
The lifetime of the access token in seconds.
scope:
type: string
description: >-
The scope of access granted by the token.
token_type:
type: string
description: >-
The type of token, typically Bearer.
HistoricalPricingResponse:
type: object
properties:
universe:
type: object
properties:
ric:
type: string
description: >-
The RIC identifier for the instrument.
displayName:
type: string
description: >-
The display name of the instrument.
data:
type: array
items:
type: object
description: >-
Individual pricing data points with fields such as date,
open, high, low, close, volume, and count.
headers:
type: array
items:
type: object
properties:
name:
type: string
description: >-
The field name.
type:
type: string
description: >-
The data type of the field.
PricingSnapshotResponse:
type: object
properties:
universe:
type: array
items:
type: object
properties:
ric:
type: string
description: >-
The RIC identifier for the instrument.
displayName:
type: string
description: >-
The display name of the instrument.
status:
type: string
description: >-
The status of the pricing data retrieval.
headers:
type: array
items:
type: object
properties:
name:
type: string
description: >-
The field name.
type:
type: string
description: >-
The data type of the field.
data:
type: array
items:
type: array
items:
description: >-
Field values corresponding to the headers array.
NewsHeadlinesResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/NewsHeadline'
meta:
type: object
properties:
count:
type: integer
description: >-
The total number of matching headlines.
next:
type: string
description: >-
Pagination cursor for the next page of results.
NewsHeadline:
type: object
properties:
storyId:
type: string
description: >-
The unique identifier of the news story.
title:
type: string
description: >-
The headline text.
newsItem:
type: string
description: >-
A reference identifier for the news item.
sourceCode:
type: string
description: >-
The code identifying the news source.
versionCreated:
type: string
format: date-time
description: >-
The timestamp when the headline was created.
NewsStory:
type: object
properties:
storyId:
type: string
description: >-
The unique identifier of the news story.
title:
type: string
description: >-
The headline of the story.
body:
type: string
description: >-
The full text body of the news story.
sourceCode:
type: string
description: >-
The code identifying the news source.
versionCreated:
type: string
format: date-time
description: >-
The timestamp when the story was published.
EsgResponse:
type: object
properties:
headers:
type: array
items:
type: object
properties:
name:
type: string
description: >-
The field name.
title:
type: string
description: >-
The display title of the field.
type:
type: string
description: >-
The data type of the field.
data:
type: array
items:
type: array
items:
description: >-
Field values corresponding to the headers array.
FinancialContractRequest:
type: object
properties:
fields:
type: array
items:
type: string
description: >-
List of output fields to calculate.
outputs:
type: array
items:
type: string
description: >-
List of output types to return.
universe:
type: array
items:
type: object
properties:
instrumentType:
type: string
description: >-
The type of financial instrument such as Bond or Swap.
instrumentDefinition:
type: object
description: >-
The instrument definition parameters.
pricingParameters:
type: object
description: >-
The pricing parameters for the calculation.
description: >-
Array of financial contract definitions to price.
FinancialContractResponse:
type: object
properties:
headers:
type: array
items:
type: object
properties:
name:
type: string
description: >-
The output field name.
type:
type: string
description: >-
The data type of the field.
data:
type: array
items:
type: array
items:
description: >-
Calculated values corresponding to the headers array.
SymbologyConvertRequest:
type: object
properties:
from:
type: array
items:
type: object
properties:
identifierTypes:
type: array
items:
type: string
description: >-
The source identifier types.
values:
type: array
items:
type: string
description: >-
The identifier values to convert.
description: >-
Source identifiers to convert from.
to:
type: array
items:
type: string
description: >-
Target identifier types to convert to.
SymbologyConvertResponse:
type: object
properties:
data:
type: array
items:
type: object
description: >-
Conversion results mapping source identifiers to target
identifiers.
SearchRequest:
type: object
properties:
Query:
type: string
description: >-
The search query string.
View:
type: string
description: >-
The search view such as Entities, InstrumentSearch, or
QuoteSearch.
enum:
- Entities
- InstrumentSearch
- QuoteSearch
- IndicatorSearch
Filter:
type: string
description: >-
Filter expression to narrow search results.
Top:
type: integer
description: >-
Maximum number of results to return.
Skip:
type: integer
description: >-
Number of results to skip for pagination.
Select:
type: string
description: >-
Comma-separated list of fields to include in results.
SearchResponse:
type: object
properties:
Total:
type: integer
description: >-
Total number of matching results.
Hits:
type: array
items:
type: object
description: >-
Individual search result containing the matched entity or
instrument data.