Overview
This is a REST web API for end-of-day financial market data and uses 256 bit SSL encryption through https.
Authentication
Requests require a UserId/UserNum pair to be provided with every request. If you do not have one, please contact commercial sales. CSI must also set up your account with the contracted entitlements.
HTTP Status Code Responses
Response
-
200 Ok
The request has succeeded.
-
400 Bad Request
The request was invalid. See the message for more information.
-
401 Unauthorized
The UserId is not authorized. See the message for more information.
-
500 Internal Server Error
The server experienced an error. Please contact customer support.
Error Message Responses
Response
-
success
Success
-
missing_userid
The UserId parameter is missing.
-
missing_usernum
The UserNum parameter is missing.
-
invalid_userid
Your UserId is not valid.
-
invalid_usernum
Your UserNum is not valid.
-
inactive_userid
Your UserId is not active.
-
no_package
No package enabled.
-
not_entitled
Your UserId is not entitled for this endpoint.
-
data_not_ready
The data is not ready.
-
blocked_ip_address
Blocked IP Address.
-
blocked_mac_address
Blocked Mac Address.
-
rate_limit_exceeded
Rate Limit Exceeded.
-
missing_date
Missing date attribute.
-
invalid_date
Invalid date attribute.
-
invalid_format
Invalid format attribute.
-
no_api_access
Web api access is not enabled.
-
missing_csinum
Csinum is missing.
-
invalid_csinum
Csinum is invalid.
-
custom_error
Message varies.
-
symbol_not_found
The symbol cannot be found.
-
portfolio_is_empty
The portfolio is empty.
-
not_entitled_for_csinum
Your UserId is not entitled for this csinum.
-
not_entitled_for_date
Your UserId is not entitled for this date.
-
not_entitled_for_port
Your UserId is not entitled for this portfolio.
-
db_connect_error
Error connecting to the database.
Header Row
Response
-
To show a header row for CSV requests, inculde the ShowHeader=1 parameter. This will only work for endpoints that return one record type.
Overview
The call limit is 3000 requests per month for all endpoints combined.
Futures Factsheet
Returns factsheet data for all futures. View the html version here.
More information on point and tick values.
More information on units and contract values.
Request
-
Formatoptional string
Specify csv or html format. The default is csv.
-
Csinumoptional integer
Returns one future record. The csinum and DM code must both be provided together.
-
DMoptional integer
Returns one future record. The csinum and DM code must both be provided together.
-
ExchangeCodeoptional string
Returns futures of a given exchange code and symbol. The ExchangeCode and ExchangeSymbol must both be provided together.
-
ExchangeSymboloptional string
Returns futures of a given exchange code and symbol. The ExchangeCode and ExchangeSymbol must both be provided together.
Response
-
Csinuminteger
The unique identifier.
-
DMCodeinteger
The secondary unique identifier.
-
Symbolstring
The CSI futures symbol.
-
Namestring
The name.
-
ExchangeCodestring
The exchange code identifier. See the futures exchange codes.
-
IsActiveboolean
This flag designates if the future is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
StartDateWithMappingdate
The first date of trading history when the history is extended with other series.
-
UnitNumeratorMultiplierdecimal
The multiplier for the unit numerator.
-
CurrencyCodestring(3)
The trading currency. See the currencies.
-
ContractSizedecimal
The size of the contract as a decimal number.
-
UnitDenominatorMultiplierdecimal
The multiplier for the unit denominator.
-
UnitDenominatorTypeIdinteger
The type ID for the unit denominator. See Unit Denominator Types.
-
MinimumTickdecimal
The minimum tick size displayed in points format.
-
TickValuedecimal
The value of one tick.
-
FractionalPointValuedecimal
The value of one CSI point.
-
FullPointValuedecimal
The value of 1.00 of price movement.
-
PriceLimitdecimal
The price limit.
-
Categoryinteger
The futures category identifier. See futures categories.
-
SessionTypeinteger
The type of session. 1 for RTH (regular trading hours), 2 for ETH (extended/electronic trading hours), and 3 for combined session.
-
CloseTypeinteger
Indicates the type of price in the close field, 0 for settlements and 1 for lasts.
-
ExchangeSymbolstring
The symbol used on the exchange. This usually matches the CSI symbol.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
HasImplied5Boolean
Indicates if CSI points format require an implied 5.
-
ValidDeliveryMonthsstring(12)
The historical valid delivery months. The valid (V), invalid (I), and switching (S) months. Valid months are always available for trading by the exchange, invalid months are not available for trading, and switching months are sometimes available. The characters are presented in the 1-12 month order 'JFMAMJJASOND'.
-
HasCurrentDayVolumeBoolean
Indicates if CSI has current day volume coverage.
-
HasCurrentDayOpenInterestBoolean
Indicates if CSI has current day open interest coverage.
-
HasKnownExpirationDatesBoolean
Indicates if CSI has expiration date coverage.
-
UnderlyingStockinteger
The underlying stock csinum for futures which are based on stocks or indices. See the stock factsheet.
-
SessionGroupIdinteger
Identifier for futures with multiple sessions.
-
UACsinuminteger
The unique identifier used in Unfair Advantage.
-
TradingHoursStarttime
The time that trading starts on the exchange.
-
TradingHoursEndtime
The time that trading ends on the exchange.
-
ContractSizeTextstring
The size of the contract as text.
-
PerpetualIsDifferentboolean
This is only valid when DMCode is 0. It tells which Csinums have DMCode series that are not perpetual data, such as most Forex and LME.
-
Footnotestring
A footnote containing any significant events in the market history.
-
BBGTickerstring
The BBG root ticker.
-
BBGYellowKeystring
The BBG yellow key.
-
OhlcOffsetinteger
There are some markets that go negative and previously CSI could not support storing negative numbers. An offset needs to be applied. Subtract this offset (with the conversion factor applied) from the CSI price to get the actual price. Newer file formats do not require this.
-
EnergyGroupNamestring
The root name for energy futures that have multiple delivery intervals.
-
CurrentValidDeliveryMonthsstring(12)
The current valid delivery months. The valid (V), invalid (I), and switching (S) months. Valid months are always available for trading by the exchange, invalid months are not available for trading, and switching months are sometimes available. The characters are presented in the 1-12 month order 'JFMAMJJASOND'.
-
MinimumTickSizedecimal
The minimum tick size displayed in decimal format.
API Endpoint
https://apps.csidata.com/FuturesFactsheetRequest Example
https://apps.csidata.com/FuturesFactsheet?Format=csv&ShowHeader=1Response Example
Raw Futures Price History
Returns raw historical futures price data that is unadjusted.
Request
-
Csinuminteger
The unique identifier.
-
DYoptional integer
The delivery year.
-
DMoptional integer
The delivery month.
-
Start Dateoptional date
The start date of history to return.
-
End Dateoptional date
The end date of history to return.
Response
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Dateoptional date
The trade date.
-
Opendecimal
The open price.
-
Highdecimal
The high price.
-
Lowdecimal
The low price.
-
Closedecimal
The close price.
-
Volumedecimal
The volume.
-
OIdecimal
The open interest.
API Endpoint
https://apps.csidata.com/FuturesHistoryRequest Example
https://apps.csidata.com/FuturesHistory?Csinum=2&DY=2019&DM=12Response Example
Futures Delivery Months
Returns all delivery months for a given future.
Request
-
Csinuminteger
The unique identifier.
-
Start Dateoptional date
The start date of history to return.
-
End Dateoptional date
The end date of history to return.
Response
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
API Endpoint
https://apps.csidata.com/FuturesHistoryDeliveryMonthsRequest Example
https://apps.csidata.com/FuturesHistoryDeliveryMonths?Csinum=2Response Example
Cash Factsheet
Returns factsheet data for cash markets.
Request
-
formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
DMCodeinteger
The secondary unique identifier.
-
Symbolstring
The CSI symbol.
-
Namestring
The name.
-
ExchangeCodestring
The exchange code identifier. See the futures exchange codes.
-
IsActiveboolean
This flag designates if the cash market is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
StartDateWithMappingdate
The first date of trading history when the history is extended with other series.
-
UnitNumeratorMultiplierdecimal
The multiplier for the unit numerator (typically the currency).
-
CurrencyCodestring(3)
The trading currency. See the currencies.
-
UnitDenominatorMultiplierdecimal
The multiplier for the unit denominator (typically the contract size).
-
UnitDenominatorTypeIdinteger
The type ID for the unit denominator (typically the contract size). See futures units.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
UACsinuminteger
The unique identifier used in Unfair Advantage.
-
Footnoteboolean
Any notable events or details about the market.
API Endpoint
https://apps.csidata.com/CashFactsheetRequest Example
https://apps.csidata.com/CashFactsheet?format=csvResponse Example
Futures and Options Exchanges
Returns the exchanges that provide futures and options.
Response
-
ExchangeCodestring
The unique identifier.
-
Namestring
The exchange name.
-
HasFuturesBoolean
The exchange has futures.
-
HasFuturesOptionsBoolean
The exchange has futures options.
-
HasStockOptionsBoolean
The exchange has stock options.
-
ParentExchangeCodestring
The parent exchange code.
-
IsOldExchangeboolean
This flag designates if the exchange no longer exists.
-
ISOCountryCodestring
The ISO country code.
API Endpoint
https://apps.csidata.com/FuturesExchangesRequest Example
https://apps.csidata.com/FuturesExchangesResponse Example
Unit Denominator Types
Returns the unit denominator types for futures that are used in the futures factsheet.
Response
-
UnitDenominatorTypeIDinteger
The unique identifier.
-
Namestring
The type name.
-
Abbreviationstring
The abbreviation.
API Endpoint
https://apps.csidata.com/UnitDenominatorTypesRequest Example
https://apps.csidata.com/UnitDenominatorTypesResponse Example
Futures Categories
Returns the futures categories that are used in the futures factsheet.
Response
-
FuturesCategoryIDinteger
The unique identifier.
-
Namestring
The category name.
-
AssetClassIdinteger
The asset class identifier.
API Endpoint
https://apps.csidata.com/FuturesCategoriesRequest Example
https://apps.csidata.com/FuturesCategoriesResponse Example
Asset Classes
Returns the asset classes used for classifying futures.
Response
-
AssetClassIdinteger
The unique identifier.
-
Namestring
The name.
API Endpoint
https://apps.csidata.com/AssetClassesRequest Example
https://apps.csidata.com/AssetClassesResponse Example
Footnotes
Returns footnotes for futures and stocks.
Response
-
FootnoteIDinteger
The unique identifier.
-
Descriptionstring
The footnote description.
API Endpoint
https://apps.csidata.com/FootnotesRequest Example
https://apps.csidata.com/FootnotesResponse Example
Futures Footnote Mappings
Returns the footnote mappings for futures. See footnotes for the actual footnotes. View the html version here.
Request
-
Formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
DMinteger
The DM code.
-
FootnoteIDinteger
The footnote ID.
API Endpoint
https://apps.csidata.com/FuturesFootnotesRequest Example
https://apps.csidata.com/FuturesFootnotesResponse Example
Contract Dates
Important dates for futures and options contracts.
Futures Coverage
- Notice, Delivery Dates – Back to 2017 for ICE and CME exchanges. Notice dates to March 2020 are available for Montreal Exchange.
- Trade Dates – Back to 2017 for about 80% of active futures.
- CSI Dates – All contracts for all futures.
- Expiration Dates – Back to late 2001. Most active futures and about 80% of inactive futures.
Futures Options Coverage
- Notice, Delivery Dates – None.
- Trade Dates – Back to 2017. About 70% of active options.
- CSI Dates – All contracts for all options.
- Expiration Dates – Back to late 2001. About 70% of active options and half of inactive.
Request
-
Typeoptional string
Specify Futures or Options. The default is Futures.
-
HideExpiredContractsoptional boolean
Specify HideExpiredContracts=1 to prevent all expired contracts from being included. The default is false.
Response
-
Csinuminteger
The unique identifier.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
FirstNoticeDatedate
The first notice date.
-
LastNoticeDatedate
The last notice date.
-
FirstDeliveryDatedate
The first delivery date.
-
LastDeliveryDatedate
The last delivery date.
-
FirstTradeDatedate
The first date available for trading.
-
LastTradeDatedate
The last date available for trading.
-
FirstCsiDatedate
The first date in CSI's price history.
-
LastCsiDatedate
The last date in CSI's price history
-
ExpirationDatedate
The date the contract expires.
-
LastCsiDateWithPricesdate
The last date in CSI's price history that has a settlement price.
API Endpoint
https://apps.csidata.com/ContractDatesRequest Example
https://apps.csidata.com/ContractDates?Type=FuturesResponse Example
Futures History Adjustments
Returns events where adjustments have been made to futures contract specifications. These adjustments can be applied to the history to produce continuous series. Incudes changes to currencies, coupon rates, contract sizes, and units, as well as stock index splits.
Response
-
ChangeTypestring(2)
The unique identifier for the adjustment type
-
Csinuminteger
The unique identifier for the future.
-
AdjustmentStartDYinteger
The starting delivery year.
-
AdjustmentStartDMinteger
The starting delivery month.
-
AdjustmentEndDYinteger
The ending delivery year.
-
AdjustmentEndDMinteger
The ending delivery month.
-
AdjustmentStartDatedate
The start date.
-
AdjustmentEndDatedate
The end date.
-
AdjustOHLCboolean
Flag indicates if adjustment should be applied to the open, high, low, and close prices.
-
AdjustVolboolean
Flag indicates if the adjustment should be applied to the volume.
-
AdjustOIboolean
Flag indicates if the adjustment should be applied to the open interest.
-
Adjustmentdecimal
The adjustment that should be applied to the range of data falling within the start/end dates and start/end delivery months. If this value is null(empty) and the type is CT (currency type change), then the adjustment factors are the forex prices for the currencies in the Value and SubsequentValue fields.
-
FootnoteIdinteger
The unique identifier for the footnote.
-
Valuestring
The value before the change event.
-
SubsequentValuestring
The value after the change event.
API Endpoint
https://apps.csidata.com/FuturesHistoryAdjustmentsRequest Example
https://apps.csidata.com/FuturesHistoryAdjustmentsResponse Example
History Adjustment Types
Returns the types for the Futures History Adjustments.
Response
-
TypeIdstring(2)
The unique identifier.
-
Descriptionstring
The description.
API Endpoint
https://apps.csidata.com/HistoryAdjustmentTypesRequest Example
https://apps.csidata.com/HistoryAdjustmentTypesResponse Example
Futures History Mappings
Returns mappings that can be used to extend futures history series farther into the past.
Response
-
MappingIdinteger
The unique identifier of the mapping record.
-
FromCsinuminteger
The csinum from which to take the history.
-
ToCsinuminteger
The csinum where the history should be appended to.
-
FromDYinteger
The delivery year of the FromCsinum to start taking history.
-
FromDMinteger
The delivery month of the FromCsinum to start taking history.
-
ToDYinteger
The delivery year of the FromCsinum to stop taking history.
-
ToDMinteger
The delivery month of the FromCsinum to stop taking history.
-
StartDatedate
The start date of the FromCsinum to use.
-
EndDatedate
The end date of the FromCsinum to use.
API Endpoint
https://apps.csidata.com/FuturesHistoryMappingsRequest Example
https://apps.csidata.com/FuturesHistoryMappingsResponse Example
Stock Factsheet
Returns factsheet data for all stocks, indices, and mutual funds. View the html version here.
Request
-
Formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
Symbolstring
The stock symbol.
-
Namestring
The name.
-
ExchangeCodestring
The exchange code identifier. See the stock exchange codes.
-
IsActiveboolean
This flag designates if the stock is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
TypeIdstring
The type identifier. See the stock types.
-
CurrencyCodestring
The trading currency. See the currencies.
-
SectorIdstring
The stock sector identifier.
-
IndustryIdstring
The stock industry identifier.
-
ExchangeSymbolstring
The symbol used on the exchange.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
PreSwitchConversionFactorsigned integer
The conversion factor prior to the date it changed.
-
ConversionFactorSwitchDatedate
The date when the conversion factor changed.
-
VolumeDivisorinteger
The volume divisor used to store volumes in the internal CSI database.
-
LegacyExchangeCodestring
A broader exchange code. Possible values are NASDAQ, AMEX, NYSE, TSX, TSXV, MUTUAL, INDEX, and FINDEX. OTC markets are labeled under NASDAQ.
API Endpoint
https://apps.csidata.com/StockFactsheetRequest Example
https://apps.csidata.com/StockFactsheet?Format=csvResponse Example
Stock Types
Returns all of the stock types.
Request
-
formatoptional string
Specify csv or json format. The default is csv.
Response
-
StockTypeIdstring(3)
The stock type identifier.
-
Namestring
The stock type description.
API Endpoint
https://apps.csidata.com/StockTypesRequest Example
https://apps.csidata.com/StockTypes?format=csvResponse Example
Stock Exchanges
Returns all of the stock exchanges.
Request
-
formatoptional string
Specify csv or json format. The default is csv.
Response
-
ExchangeCodestring(3)
The exchange code identifier.
-
Namestring
The exchange name.
API Endpoint
https://apps.csidata.com/StockExchangesRequest Example
https://apps.csidata.com/StockExchanges?format=csvResponse Example
Stock Price History
Returns history for stocks, indexes, and mutual funds. The start date of available history is set by your agreement with CSI, please contact us for additional history.
Request
-
Csinuminteger
The request csinum. Either the csinum or symbol is required. See all available csinums in the stock factsheet.
-
Symbolstring
The request stock symbol. Either the csinum or symbol is required. Append the following to the symbol for Non-US stocks.
"-L" for London Stock Exchange
"-T" for Toronto Stock Exchange
"-V" for TSX Venture Exchange -
StartDateoptional date
The start date in YYYYMMDD format.
-
EndDateoptional date
The end date in YYYYMMDD format.
-
AdjustForSplitsoptional boolean
Use 1 to specify that the history should be split adjusted.
-
AdjustForDividendsFixedoptional boolean
Use 1 to specify that the history should be adjusted by subtracting the cumulative dividends from the price going back in time. Using this method it is possible to see negative prices.
-
AdjustForDividendsProportionaloptional boolean
Use 1 to specify that the history should be adjusted for dividends proportionally. This means that for each dividend, a ratio is computed from the previous close. The prices get multiplied by this cumulative ratio going back in time.
-
AdjustForCapitalGainsFixedoptional boolean
Only applies to mutual funds. Use 1 to specify that the history should be adjusted by subtracting the cumulative capital gains from the price going back in time. Using this method it is possible to see negative prices.
-
AdjustForCapitalGainsProportionaloptional boolean
Only applies to mutual funds. Use 1 to specify that the history should be adjusted for capital gains proportionally. This means that for each dividend, a ratio is computed from the previous NAV. This cumulative ratio is applied back in time.
-
DivideVolumeoptional boolean
Only applies to mutual funds. Use 1 to specify that the history should be adjusted for capital gains proportionally. This means that for each capital gain, a ratio is computed from the previous NAV. The NAVs get multiplied by this cumulative ratio going back in time.
Response
-
Record Type: 70
Header record.
-
TypeFlaginteger
File type flag. ‘2’ for history.
-
UserIdstring(3)
The requested UserId.
-
CreationDatedate
Creation date in YYMMDD format.
-
CreationTimetime
Creation time in HHMMSS format.
-
RecordCountinteger
Record count, including header and trailer records.
-
Record Type: 71
History Header Record.
-
Symbolstring
The symbol.
-
Csinuminteger
The csinum.
-
unused1
-
unused2
-
NPCFlagchar
Normal/Put/Call flag will show N/P/C respectively.
-
Strikedecimal
Strike price when displaying options.
-
Frequencychar
Daily/Weekly/Monthly flag will show D/W/M respectively.
-
FirstDatedate
First date in file (CCYYMMDD format).
-
LastDatedate
Last date in file (CCYYMMDD format).
-
CFinteger
Conversion factor.
-
NumDaysinteger
Number of days in the file.
-
Record Type: 73
Stock price record in points.
-
Same as type 83, with prices in points format.
-
Record Type: 76
Mutual fund record in points.
-
Same as type 86, with prices in points format.
-
Record Type: 83
Stock price record in decimal.
-
Datedate
Date of data in CCYYMMDD format.
-
Csinuminteger
The csinum.
-
Opendecimal
Open price.
-
Highdecimal
High price.
-
Lowdecimal
Low price.
-
Closedecimal
Close price.
-
Volumeinteger
Volume.
-
Record Type: 86
Mutual fund record in decimal.
-
Datedate
Date of data in CCYYMMDD format.
-
NAVdecimal
Net asset value.
-
Record Type: 97
Dividend/capital gain record.
-
ExDatedate
Ex-dividend date in CCYYMMDD format.
-
Dividenddecimal
Dividend amount.
-
CapitalGaindecimal
Capital gain amount.
-
Record Type: 98
Stock split record.
-
SplitDatedate
Split date in CCYYMMDD format.
-
NewSharesinteger
Number of new shares.
-
OldSharesinteger
Number of old shares.
API Endpoint
https://apps.csidata.com/StockHistRequest Example
https://apps.csidata.com/StockHist?Csinum=5110&AdjustForSplits=1&AdjustForDividendsProportional=1Response Example
Raw Stock Price History
Returns history for stocks, indexes, and mutual funds. This endpoint has no options for adjusting. The start date of available history is set by your agreement with CSI, please contact us for additional history.
Request
-
Csinuminteger
The request csinum. Either the csinum or symbol is required. See all available csinums in the stock factsheet.
-
StartDateoptional date
The start date in YYYYMMDD format.
-
EndDateoptional date
The end date in YYYYMMDD format.
Response
-
Csinuminteger
The unique stock identifier.
-
Start Dateoptional date
The start date of history to return.
-
End Dateoptional date
The end date of history to return.
API Endpoint
https://apps.csidata.com/StockHistRawRequest Example1
https://apps.csidata.com/StockHistRaw?Csinum=5110Response Example1
Stock Daily Adjusted
Returns one day of price data for stocks, indexes, and mutual funds in historical format. It allows prices to be adjusted for splits, dividends, and capital gains. This can also include adjusted correction records.
Request
-
RequestDatedate
The request date in YYYYMMDD format. It must be within the last 40 days.
-
AdjustForSplitsoptional boolean
Use 1 to specify that the history should be split adjusted.
-
AdjustForDividendsFixedoptional boolean
Use 1 to specify that the history should be adjusted by subtracting the cumulative dividends from the price going back in time. Using this method it is possible to see negative prices.
-
AdjustForDividendsProportionaloptional boolean
Use 1 to specify that the history should be adjusted for dividends proportionally. This means that for each dividend, a ratio is computed from the previous close. The prices get multiplied by this cumulative ratio going back in time.
-
AdjustForCapitalGainsFixedoptional boolean
Only applies to mutual funds. Use 1 to specify that the history should be adjusted by subtracting the cumulative capital gains from the price going back in time. Using this method it is possible to see negative prices.
-
AdjustForCapitalGainsProportionaloptional boolean
Only applies to mutual funds. Use 1 to specify that the history should be adjusted for capital gains proportionally. This means that for each capital gain, a ratio is computed from the previous NAV. The NAVs get multiplied by this cumulative ratio going back in time.
-
DivideVolumeoptional boolean
Only applies to stocks and indices. Use 1 to specify that the volume should be divided by the VolumeDivisor from the stock factsheet. This is primarily for legacy use.
-
IncludeCorrectionsoptional boolean
Use 1 to include correction records in adjusted format.
Response
- The same as the StockHistory response.
API Endpoint
https://apps.csidata.com/StockDailyAdjustedRequest Example1
https://apps.csidata.com/StockDailyAdjusted?RequestDate=20200114&AdjustForSplits=1Response Example1
Request Example2
https://apps.csidata.com/StockDailyAdjusted?RequestDate=20200113&AdjustForSplits=1Response Example2
Stock Corrections Adjusted
Returns split adjusted corrections for all stock price data, mutual fund NAVs, dividends, and capital gains.
Request
-
DateOfCorrectionsdate
The request date in YYYYMMDD format.
Response
-
Record Type: 09
Correct a past day of data.
-
Data Datedate
The trade date for prices or the ex date for dividends and capital gains.
-
Underlying Record Typeinteger
33 for stock prices
36 for mutual fund navs
37 for dividends and capital gains -
Additional Fields
The other fields are specified in the daily csv documentation for each underlying record type.
-
Record Type: 13
Delete a past day of data.
-
Data Datedate
Date to be deleted.
-
Symbolstring
The stock or mutual fund symbol.
-
Csinuminteger
The csinum identifier.
-
Unused
-
Unused
-
Unused
API Endpoint
https://apps.csidata.com/StockCorrectionsAdjustedRequest Example
https://apps.csidata.com/StockCorrectionsAdjusted?DateOfCorrections=20210505Response Example
Stock Split History
Returns split history for stocks, mutual funds, and indices. The start date of available history is set by your agreement with CSI, please contact us for additional history.
Request
-
Csinuminteger
The request csinum. See all available csinums in the stock factsheet.
-
StartDateoptional date
The start date in YYYYMMDD format.
-
EndDateoptional date
The end date in YYYYMMDD format.
Response
-
Ex Datedate
The date when the shares begin trading at post-split prices.
-
New Sharesinteger
The number of new shares after the split. For example, in a 2 for 1 split, every 1 (old) share held by traders is replaced with 2 (new) shares.
-
Old Sharesinteger
The number of old shares after the split.
API Endpoint
https://apps.csidata.com/SplitsRequest Example
https://apps.csidata.com/Splits?csinum=5110Response Example
Stock Dividend History
Returns dividend history for stocks and mutual funds. The start date of available history is set by your agreement with CSI, please contact us for additional history.
Request
-
Csinuminteger
The request csinum. See all available csinums in the stock factsheet.
-
StartDateoptional date
The start date in YYYYMMDD format.
-
EndDateoptional date
The end date in YYYYMMDD format.
Response
-
Ex Datedate
The date when the shares begin trading at post-distribution prices.
-
Dividenddecimal
The amount of the dividend.
API Endpoint
https://apps.csidata.com/DividendsRequest Example
https://apps.csidata.com/Dividends?csinum=5970Response Example
Stock Dividend History
Returns capital gain history for mutual funds. The start date of available history is set by your agreement with CSI, please contact us for additional history.
Request
-
Csinuminteger
The request csinum. See all available csinums in the stock factsheet.
-
StartDateoptional date
The start date in YYYYMMDD format.
-
EndDateoptional date
The end date in YYYYMMDD format.
Response
-
Ex Datedate
The date when the shares begin trading at post-distribution prices.
-
Dividenddecimal
The amount of the capital gain. This is the sum of long and short term.
API Endpoint
https://apps.csidata.com/CapitalGainsRequest Example
https://apps.csidata.com/CapitalGains?csinum=1920Response Example
Stock Sectors
Returns all of the stock sectors.
Response
-
SectorIdstring(3)
The unique identifier.
-
SectorNamestring
The sector name.
API Endpoint
https://apps.csidata.com/StockSectorsRequest Example
https://apps.csidata.com/StockSectorsResponse Example
Stock Industries
Returns all of the stock Industries.
Response
-
IndustryIdstring(3)
The unique identifier.
-
SectorIdstring(3)
The unique identifier for the parent stock sector.
-
IndustryNamestring
The sector name.
API Endpoint
https://apps.csidata.com/StockSectorsRequest Example
https://apps.csidata.com/StockSectorsResponse Example
Shares Outstanding History
Returns history for all Shares Outstanding for most US Stocks.
Response
-
Csinuminteger
The stock csinum.
-
SharesOutstandinginteger
The shares outstanding including split adjustments.
-
EffectiveDatedate
The shares outstanding effective date.
API Endpoint
https://apps.csidata.com/SharesOutstandingHistoryRequest Example
https://apps.csidata.com/SharesOutstandingHistoryResponse Example
Shares Outstanding Snapshot
Returns a snapshot with the most recent Shares Outstanding for each US Stock.
Response
-
Csinuminteger
The stock csinum.
-
SharesOutstandinginteger
The shares outstanding including split adjustments.
-
EffectiveDatedate
The shares outstanding effective date.
API Endpoint
https://apps.csidata.com/SharesOutstandingSnapshotRequest Example
https://apps.csidata.com/SharesOutstandingSnapshotResponse Example
Futures Option Factsheet
Returns factsheet data for all futures options. View the html version here.
Request
-
formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
Symbolstring
The CSI symbol.
-
Namestring
The name.
-
ExchangeCodestring
The exchange code identifier. See the futures and options exchange codes.
-
IsActiveboolean
This flag designates if the option is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
ValidDeliveryMonthsstring(12)
The valid (V), invalid (I), and switching (S) months.
-
ConversionFactorinteger
The current conversion factor used for converting prices in points format. See conversion factors.
-
DivideStrikeinteger
Used when converting a points representation strike to match the decimal futures price. For 0 the literal value is taken. For 1, the points price is divided by 10. For -1, the points price is multiplied by 10.
-
Implied5Pricesboolean
This is also only needed when converting CSI's point representation to decimal. This means to append a '5' to any terminal digit that is a '2' or a '7'.
-
Implied5Strikesboolean
This is also only needed when converting CSI's point representation to decimal. This means to append a '5' to any terminal digit that is a '2' or a '7'.
-
ContractSizedecimal
The size of the contract as a decimal number.
-
MinimumTickdecimal
The minimum tick defined by the exchange.
-
TickValuedecimal
The value of one tick.
-
FractionalPointValuedecimal
The value of one CSI point.
-
FullPointValuedecimal
The value of 1.00 of price movement.
-
Currencystring
The trading currency. See the currencies.
-
ParentCsinuminteger
The parent CSI number that contains the normal monthly options.
-
ExchangeSymbolstring
The symbol used on the exchange.
-
TradingHoursStarttime
The time that trading starts on the exchange.
-
TradingHoursEndtime
The time that trading ends on the exchange.
API Endpoint
https://apps.csidata.com/FuturesOptionFactsheetRequest Example
https://apps.csidata.com/FuturesOptionFactsheet?Format=csvResponse Example
Stock Option Factsheet
Returns factsheet data for all stock options. View the html version here.
Request
-
Formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
Symbolstring
The CSI symbol.
-
Namestring
The name.
-
ExchangeCodestring
The exchange code identifier. See the futures and options exchange codes.
-
IsActiveboolean
This flag designates if the option is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
ConversionFactorinteger
The current conversion factor used for converting prices in points format. See conversion factors.
-
DivideStrikeinteger
Used when converting a points representation strike to match the decimal futures price. For 0 the literal value is taken. For 1, the points price is divided by 10. For -1, the points price is multiplied by 10.
-
Implied5Pricesboolean
This is also only needed when converting CSI's point representation to decimal. This means to append a '5' to any terminal digit that is a '2' or a '7'.
-
Implied5Strikesboolean
This is also only needed when converting CSI's point representation to decimal. This means to append a '5' to any terminal digit that is a '2' or a '7'.
API Endpoint
https://apps.csidata.com/StockOptionFactsheetRequest Example
https://apps.csidata.com/StockOptionFactsheet?Format=csvResponse Example
Futures Options Price History
Returns historical futures options price data.
Request
-
Csinuminteger
The unique identifier.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Strikeoptional decimal
The strike.
-
Start Dateoptional date
The start date of history to return.
-
End Dateoptional date
The end date of history to return.
Response
-
Put/Call Flagchar
P for put, C for call.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Strikedecimal
The strike price.
-
Datedate
The trade date.
-
Opendecimal
The open price. This field was not supported prior to July 1st, 2021 and will be blank.
-
Highdecimal
The high price.
-
Lowdecimal
The low price.
-
Closedecimal
The close price.
-
Volumedecimal
The volume.
-
OIdecimal
The open interest.
API Endpoint
https://apps.csidata.com/OptionsHistoryRequest Example
https://apps.csidata.com/OptionsHistory?Csinum=2&DY=2019&DM=12Response Example
Stock Options Price History
Returns historical stock options price data.
Request
-
Csinuminteger
The unique identifier.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Strikeoptional decimal
The strike.
-
Start Dateoptional date
The start date of history to return.
-
End Dateoptional date
The end date of history to return.
Response
-
Put/Call Flagchar
P for put, C for call.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Strikedecimal
The strike price.
-
Datedate
The trade date.
-
Highdecimal
The high price.
-
Lowdecimal
The low price.
-
Closedecimal
The close price.
-
Biddecimal
The bid price.
-
Askdecimal
The ask price.
-
Volumedecimal
The volume.
-
OIdecimal
The open interest.
API Endpoint
https://apps.csidata.com/StockOptionsHistoryRequest Example
https://apps.csidata.com/StockOptionsHistory?Csinum=5676&DY=2019&DM=12Response Example
Option Contract Underliers
Returns the underlying instrument for options contracts.
Response
-
Csinuminteger
The csinum.
-
DYinteger
The delivery year.
-
DMinteger
The delivery month.
-
Underlier Typechar
The type of underlier. 'C' for commodity, 'S' for stock.
-
Underlier Csinuminteger
The underlying csinum.
-
Underlier DYinteger
The underlying delivery year.
-
Underlier DMinteger
The underlying delivery month.
API Endpoint
https://apps.csidata.com/OptionContractUnderliersRequest Example
https://apps.csidata.com/OptionContractUnderliersResponse Example
Forex Factsheet
Returns factsheet data for all forex markets.
Request
-
formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
DMCodeinteger
The secondary unique identifier.
-
Currency1string(3)
The first currency of the excahnge rate pair. See Currencies.
-
Currency2string(3)
The second currency of the excahnge rate pair. See Currencies.
-
Namestring
The name description.
-
IsActiveboolean
This flag designates if the forex market is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
Symbolstring
The CSI symbol.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
UACsinuminteger
The unique identifier used in Unfair Advantage.
API Endpoint
https://apps.csidata.com/ForexFactsheetRequest Example
https://apps.csidata.com/ForexFactsheet?format=csvResponse Example
Government Rates Factsheet
Returns factsheet data for all government rates.
Request
-
formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
DMCodeinteger
The secondary unique identifier.
-
Currencystring(3)
The currency. See Currencies.
-
Namestring
The name description.
-
IsActiveboolean
This flag designates if the series is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
Symbolstring
The CSI symbol.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
UACsinuminteger
The unique identifier used in Unfair Advantage.
API Endpoint
https://apps.csidata.com/GovtRatesFactsheetRequest Example
https://apps.csidata.com/GovtRatesFactsheet?format=csvResponse Example
Economic Statistics Factsheet
Returns factsheet data for all economic statistics.
Request
-
formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
DMCodeinteger
The secondary unique identifier.
-
Currencystring(3)
The currency. See Currencies.
-
Namestring
The name description.
-
IsActiveboolean
This flag designates if the series is active or not.
-
StartDatedate
The first date of trading history.
-
EndDatedate
The last date of trading history.
-
Symbolstring
The CSI symbol.
-
ConversionFactorsigned integer
The current conversion factor used for converting prices in points format. See conversion factors.
-
UACsinuminteger
The unique identifier used in Unfair Advantage.
API Endpoint
https://apps.csidata.com/EconStatsFactsheetRequest Example
https://apps.csidata.com/EconStatsFactsheet?format=csvResponse Example
Stock Footnote Mappings
Returns the footnote mappings for stocks. See footnotes for the actual footnotes. View the html version here.
Request
-
Formatoptional string
Specify csv or html format. The default is csv.
Response
-
Csinuminteger
The unique identifier.
-
FootnoteIDinteger
The footnote ID.
API Endpoint
https://apps.csidata.com/StockFootnotesRequest Example
https://apps.csidata.com/StockFootnotesResponse Example
Daily File
Returns a daily file with a preset portfolio of stocks, futures, and options. To create or modify the contents of the portfolio, please contact CSI support. Each portfolio is designed to be ready for download at a specific data posting. Access the LatestPosting endpoint and wait for that integer to change to the required posting ID. For example, if the portfolio contains asia markets, wait until the LatestPosting ID shows 1.
Request
-
user or UserIdrequired string
The UserId.
-
num or UserNumrequired integer
The user number.
-
daterequired date
The date of data in YYYYMMDD format.
-
portrequired string
The Id of the portfolio. Your account must be entitled for it. The preset stock portfolios are below:
G51 NYSE G52 AMEX G53 NASDAQ G54 US Indices G55 Canada Stocks G56 London Stocks G57 Mutual Funds G58 Foreign Indices G59 North American Stocks, Mutuals, World Indices G60 US Stocks, no funds G61 US ETF G62 Canada ETF G63 London ETF G64 US ETN -
NoFAoptional boolean
Use 1 to not return the file as an attachment.
Response
API Endpoint
https://apps.csidata.com/DailyRequest Example
https://apps.csidata.com/Daily?user=ABC&num=12345&port=ABC&date=19951228Response Example
Data Postings
Returns all of the data release groups.
- For futures, the PostingId of 1 means all futures of Asian exchanges are final, 2 is all European exchanges, 4 is all world futures with preliminary CME, and greater or equal 6 is all world futures with final CME.
- US stocks have preliminary OHLC and volume at posting 3. Then final OHLC and preliminary volume at posting 5. Corrections are sent the following morning for final volume which includes after hours trading.
- All options and cash are final at posting 6.
Response
-
PostingIdinteger
The posting identifier.
-
Descriptionstring
The data release description.
-
AverageReleaseTimetime
The average release time in Eastern Time.
API Endpoint
https://apps.csidata.com/DataPostingsRequest Example
https://apps.csidata.com/DataPostingsResponse Example
Latest Posting
Returns the latest posting for a given date.
Request
-
RequestDaterequired date
The date of the request in YYYYMMDD format.
Response
-
PostingIdinteger
The data posting identifier.
API Endpoint
https://apps.csidata.com/LatestPostingRequest Example
https://apps.csidata.com/LatestPosting?RequestDate=20190624Response Example
Data Updates
Request
-
RequestDateDate
The request date in YYYYMMDD format.
Response
-
HistoryHasBeenUpdatedboolean
Indicates when the historical database has been updated from the daily data files. This normally occurs around 8:10-8:30pmET.
-
StockVolumesHaveBeenUpdatedboolean
Indicates when stock volume corrections have been posted. This normally occurs around 9:30amET.
-
HistoryHasBeenUpdatedNextDayboolean
Indicates when futures and options corrections have been applied to the daily and historical data. This normally occurs around 1:30pmET the following day.
API Endpoint
https://apps.csidata.com/DataUpdatesRequest Example
https://apps.csidata.com/DataUpdates?RequestDate=20200207Response Example
Currency Catalog
Returns all of the currencies.
Response
-
CurrencyCodestring(3)
The currency code.
-
Namestring
The description.
-
IsCryptoboolean
Designates that the currency is a cryptocurrency.
API Endpoint
https://apps.csidata.com/CurrenciesRequest Example
https://apps.csidata.com/CurrenciesResponse Example
Conversion Factors
Returns all of the conversion factors used to convert prices to/from decimal and points formal. Click here for more information.
Response
-
ConversionFactorIdsigned integer
The conversion factor ID.
-
Descriptionstring
The description.
API Endpoint
https://apps.csidata.com/ConversionFactorsRequest Example
https://apps.csidata.com/ConversionFactorsResponse Example
Countries
Returns all of the countries.
Response
-
CountryIdinteger
The country ID.
-
ISOCountryCodestring
The ISO country code.
-
Namestring
The country name.
-
Currencystring
The primary currency used by the country.
API Endpoint
https://apps.csidata.com/CountriesRequest Example
https://apps.csidata.com/CountriesResponse Example
API Endpoint
https://apps.csidata.com/ExchangeCountriesRequest Example
https://apps.csidata.com/ExchangeCountriesResponse Example
Holidays
All of the available holidays.
Response
-
HolidayIdinteger
The holiday ID.
-
Descriptionstring
Description of the holiday.
API Endpoint
https://apps.csidata.com/HolidaysRequest Example
https://apps.csidata.com/HolidaysResponse Example
API Endpoint
https://apps.csidata.com/HolidayMappingsRequest Example
https://apps.csidata.com/HolidayMappingsResponse Example
Holiday Confirmations
These are confirmed holidays for specific markets. History is not available before 2020.
Response
-
Csinuminteger
The market identifier.
-
IsOptionboolean
Indicates if the market is an option.
-
HolidayDatedate
The date where there is no trading.
API Endpoint
https://apps.csidata.com/HolidayConfirmationsRequest Example
https://apps.csidata.com/HolidayConfirmationsResponse Example
Gann History
Produces a Gann series.
Request
-
csinumrequired integer
The csinum identifier.
-
deliverymonthrequired integer
The request delivery month.
-
monthsprioroptional integer
The number of months prior used.
-
dayofmonthoptional integer
The day of month to use for rolling.
-
showtotalsoptional boolean
Flag to show total volume and open interest.
-
showcashoptional boolean
Flag to include cash series.
-
includeweekendsoptional boolean
Flag to include weekends.
-
includeholidaysoptional boolean
Flag to include holidays.
-
startdateoptional date
Start date for the history returned in YYYYMMDD format.
Response
-
Datedate
The date in YYYYMMDD format.
-
DYDMinteger
The contract delivery year and month in YYYYMM format.
-
Opendecimal
The open price.
-
Highdecimal
The high price.
-
Lowdecimal
The low price.
-
Closedecimal
The close price.
-
Volumedecimal
The volume.
-
OpenInterestdecimal
The open interest.
API Endpoint
https://apps.csidata.com/GannHistoryRequest Example
https://apps.csidata.com/GannHistory?csinum=2&monthsprior=0&dayofmonth=1&deliverymonth=12&format=csvResponse Example
Correlations OvO
Returns correlation coefficients and final zscore difference for one csinum against another ("One Vs One").
Request
-
Typerequired string
Provide "OvO" for one vs one.
-
TimePeriodrequired signed integer
The time period used in the calculations. Possible values are:
-3 3 Months -6 6 Months 1 1 Year 2 2 Years 5 5 Years 10 10 Years 15 15 Years 20 20 Years 25 25 Years 30 30 Years 35 35 Years 40 40 Years -
Csinum1required integer
The first csinum (stock or future).
-
Csinum2required integer
The second csinum (stock or future).
Response
-
PearsonLinearCorrelationdouble
-
SpearmanRankCorrelationdouble
-
FinalZScoreDiffdouble
The Z Score Difference for the most recent day of data.
API Endpoint
https://apps.csidata.com/CorrelationsRequest Example
https://apps.csidata.com/Correlations?Type=OvO&TimePeriod=5&Csinum1=2&Csinum2=8Response Example
Correlations MvM
Returns correlation coefficients and final zscore difference for a list of csinums ("Many Vs Many").
Request
-
Typerequired string
Provide "MvM" for many vs many.
-
TimePeriodrequired signed integer
The time period used in the calculations. Possible values are:
-3 3 Months -6 6 Months 1 1 Year 2 2 Years 5 5 Years 10 10 Years 15 15 Years 20 20 Years 25 25 Years 30 30 Years 35 35 Years 40 40 Years -
CsinumListrequired List
The list of csinums seperated by commas (stocks and/or futures).
Response
-
Csinum1integer
The first csinum.
-
Csinum2integer
The second csinum.
-
PearsonLinearCorrelationdouble
-
SpearmanRankCorrelationdouble
-
FinalZScoreDiffdouble
The Z Score Difference for the most recent day of data.
API Endpoint
https://apps.csidata.com/CorrelationsRequest Example
https://apps.csidata.com/Correlations?Type=MvM&TimePeriod=5&CsinumList=2,8,517Response Example
Correlations OvA
Returns correlation coefficients and final zscore difference for one csinum vs all others ("One Vs All").
Request
-
Typerequired string
Provide "OvA" for one vs all.
-
TimePeriodrequired signed integer
The time period used in the calculations. Possible values are:
-3 3 Months -6 6 Months 1 1 Year 2 2 Years 5 5 Years 10 10 Years 15 15 Years 20 20 Years 25 25 Years 30 30 Years 35 35 Years 40 40 Years -
Csinumrequired integer
The csinum.
-
StockFutureComborequired integer
The group of markets to correlate against. 1 for stocks, 2 for futures, 3 for both
-
MaxResultsToReturnoptional integer
The maximum results to return. Default is 10000.
-
MinCorrFilteroptional double
All returned values will have pearson linear correlation bigger than this limit. Must be between 0 and 1.
-
MaxCorrFilteroptional double
All returned values will have pearson linear correlation less than this limit. Must be between 0 and 1.
-
MinZFilteroptional double
All returned values will have z score differences bigger than this limit.
-
MaxZFilteroptional double
All returned values will have z score differences less than this limit.
-
IncludePositiveNegativeCorroptional integer
Flag to designate if the return values should include negative, positive, or both correlations (pearson).
-
IncludePositiveNegativeZoptional integer
Flag to designate if the return values should include negative, postive, or both z score differences.
Response
-
Csinuminteger
The other csinum.
-
PearsonLinearCorrelationdouble
-
SpearmanRankCorrelationdouble
-
FinalZScoreDiffdouble
The Z Score Difference for the most recent day of data.
API Endpoint
https://apps.csidata.com/CorrelationsRequest Example
https://apps.csidata.com/Correlations?Type=OvA&TimePeriod=5&Csinum=2&StockFutureCombo=3&MinCorrFilter=0&MaxCorrFilter=1&MinZFilter=0&MaxZFilter=20&MaxResultsToReturn=1000&IncludePositiveNegativeCorr=3&IncludePositiveNegativeZ=3Response Example
Top Correlated Stocks
Returns the most correlated stocks ordered by the Pearson linear correlation.
Request
-
TimePeriodrequired signed integer
The time period used in the calculations. Possible values are:
-3 3 Months -6 6 Months 1 1 Year 2 2 Years 5 5 Years 10 10 Years 15 15 Years 20 20 Years 25 25 Years 30 30 Years 35 35 Years 40 40 Years -
Exchangesrequired string
A comma seperated list of stock exchange codes.
-
Attachmentoptional boolean
Use Attachment=1 to return the file as an attachment.
Response
-
Csinum1integer
The csinum for the first stock.
-
Symbol1string
The symbol for the first stock.
-
Exchange1string
The exchange for the first stock.
-
Csinum2integer
The csinum for the second stock.
-
Symbol2string
The symbol for the second stock.
-
Exchange2string
The exchange for the second stock.
-
PearsonLinearCorrelationdouble
-
SpearmanRankCorrelationdouble