openapi: 3.0.3 info: title: Tiingo API version: 1.0.0 description: 'Tiingo''s REST API for financial market data: end-of-day equity prices, IEX intraday, BOATS overnight equity data, consolidated equity realtime snapshots, crypto, crypto yield, forex, fundamentals, mutual fund and ETF fees, corporate actions, curated news, and asset search. Most endpoints return JSON by default and support CSV via the format parameter. Generated by API Evangelist from Tiingo''s published documentation (https://www.tiingo.com/documentation/) - Tiingo does not publish an OpenAPI itself.' termsOfService: https://www.tiingo.com/about/terms contact: name: Tiingo Support url: https://www.tiingo.com/support email: support@tiingo.com x-apievangelist: generated: '2026-07-22' method: generated source: https://apimedia.tiingo.com/dist/src_app_api_documentation_documentation_module_ts-es2015.f5eea3d64917e26bb724.js externalDocs: description: Tiingo API documentation url: https://www.tiingo.com/documentation/general/overview servers: - url: https://api.tiingo.com security: - apiTokenHeader: [] - apiTokenQuery: [] tags: - name: End-of-Day - name: Corporate Actions - name: News - name: Crypto - name: Crypto Yield - name: IEX - name: BOATS - name: Equity Realtime - name: Small Exchange - name: Forex - name: Fundamentals - name: Fund Fees - name: Utilities paths: /tiingo/daily/{ticker}: get: operationId: getDailyMeta summary: Get end-of-day metadata for a ticker tags: - End-of-Day externalDocs: url: https://www.tiingo.com/documentation/end-of-day parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/DailyMeta' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/daily/{ticker}/prices: get: operationId: getDailyPrices summary: Get end-of-day price history for a ticker tags: - End-of-Day externalDocs: url: https://www.tiingo.com/documentation/end-of-day parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'Allows resampled values that allow you to choose the values returned as daily, weekly, monthly, or annually values. Note: ONLY DAILY takes into account holidays. All others use standard business days Acceptable values: daily : Values returned as daily periods, with a holiday calendar. weekly : Values returned as weekly data, with days ending on Friday. monthly : Values returned as monthly data, with days ending on the last standard business day (Mon-Fri) of each month. annually : Values returned as annual data, with days ending on the last standard business day (Mon-Fri) of each year. Note, that if you choose a value in-between the resample period for weekly, monthly, and daily, the start date rolls back to consider the entire period. For example, if you choose to resample weekly, but your "startDate" parameter is set to Wednesday of that week, the startDate will be adjusted to Monday, so the entire week is captured. Another example is if you send a startDate mid-month, we roll back the startDate to the beginning of the month. Similarly, if you provide an endDate, and it''s midway through the period, we roll-forward the date to capture the whole period. In the above example, if the end date is set to a wednesday with a weekly resample, the end date is rolled forward to the Friday of that week.' schema: type: string - name: sort in: query required: false description: This field allows you to specify the sort direct and which column to sort by. Prepend "-" if you want descending order, otherwise it will be ascending. E.g. sort=date will sort by date in ascending order. sort=-date will sort by date in descending order. schema: type: string - name: format in: query required: false description: Response format. Supports "json" (default) and "csv". CSV is a bare-bones return type that is often 4-5x faster than JSON. schema: type: string enum: - json - csv responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/DailyPriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/corporate-actions/{ticker}/distribution-yield: get: operationId: getDistributionYield summary: Get trailing distribution yield for a ticker tags: - Corporate Actions externalDocs: url: https://www.tiingo.com/documentation/corporate-actions/dividends parameters: - name: ticker in: path required: true description: Ticker related to the asset you would like yield data for. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/DistributionYield' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/corporate-actions/{ticker}/distributions: get: operationId: getTickerDistributions summary: Get dividend distributions for a ticker tags: - Corporate Actions externalDocs: url: https://www.tiingo.com/documentation/corporate-actions/dividends parameters: - name: ticker in: path required: true description: Ticker related to the asset you would like distribution data for. schema: type: string - name: startExDate in: query required: false description: This filter limits distributions that have an ex-date >= on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endExDate in: query required: false description: This filter limits distributions that have an ex-date <= on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/Distribution' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/corporate-actions/distributions: get: operationId: getBulkDistributions summary: Get dividend distributions across all tickers for an ex-date tags: - Corporate Actions externalDocs: url: https://www.tiingo.com/documentation/corporate-actions/dividends parameters: - name: exDate in: query required: false description: This filter limits distributions that have an ex-date on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/Distribution' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/corporate-actions/{ticker}/splits: get: operationId: getTickerSplits summary: Get split corporate actions for a ticker tags: - Corporate Actions externalDocs: url: https://www.tiingo.com/documentation/corporate-actions/splits parameters: - name: ticker in: path required: true description: Ticker related to the asset you would like distribution data for. schema: type: string - name: startExDate in: query required: false description: This filter limits distributions that have an ex-date >= on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endExDate in: query required: false description: This filter limits distributions that have an ex-date <= on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/Split' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/corporate-actions/splits: get: operationId: getBulkSplits summary: Get split corporate actions across all tickers for an ex-date tags: - Corporate Actions externalDocs: url: https://www.tiingo.com/documentation/corporate-actions/splits parameters: - name: exDate in: query required: false description: This filter limits distributions that have an ex-date on the date passed. Parameter must be in YYYY-MM-DD format. schema: type: string format: date responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/Split' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/news: get: operationId: listNews summary: Get curated financial news articles tags: - News externalDocs: url: https://www.tiingo.com/documentation/news parameters: - name: tickers in: query required: false description: 'A comma-separated list of the tickers requested. When passing via GET parameter (not in URL), use a JSON array, otherwise use a comma-separated list. #Use the below format if querying directly in the URL https://api.tiingo.com/tiingo/news?tickers=aapl,googl #Otherwise, if passing GET parameters via a request library, use a JSON array like this: tickers : [''aapl'',''googl'']' schema: type: array items: &id001 type: string - name: source in: query required: false description: 'A comma-separated list of the tags requested. When passing via GET parameter (not in URL), use a JSON array, otherwise use a comma-separated list. #Use the below format if querying directly in the URL https://api.tiingo.com/tiingo/news?source=bloomberg.com,reuters.com #Otherwise, if passing GET parameters via a request library, use a JSON array like this: source : [''bloomberg.com'',''reuters.com'']' schema: type: array items: *id001 - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits news stories to on or later than the publishedDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits news stories to on or less than the publishedDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: limit in: query required: false description: The maximum number of news objects to return in the array. The default is 100 and the max is 1000. This is maxed to 1,000 as any more than that tends to lead to longer wait times. If you would like this adjusted, please contact us at support@tiingo.com . schema: type: integer - name: offset in: query required: false description: 'This is a "pagination" variable that is often used alongside limit. It returns an array with the results shifted by "offset". For example, when limit is 0 you may get the following: 0. News Story A 1. News Story B 2. News Story C 3. News Story D When offset is "2" you will receive: 0. News Story C 1. News Story D 2. News Story E 3. News Story F This, when used alongside "limit" allows for pagination and more efficient queries.' schema: type: integer - name: sortBy in: query required: false description: The field can take either "publishedDate" or "crawlDate". The date field specified will be used to sort the results in descending order. The results can either be sorted by when the news outlet reported the publish time ("datePublished") or when our feeds came across is ("crawlDate"). Defaults to "publishedDate" if no value provided schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/NewsArticle' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/news/bulk_download: get: operationId: listNewsBulkFiles summary: List available bulk news download files tags: - News externalDocs: url: https://www.tiingo.com/documentation/news responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/NewsBulkFile' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/news/bulk_download/{id}: get: operationId: downloadNewsBulkFile summary: Download a bulk news batch file tags: - News externalDocs: url: https://www.tiingo.com/documentation/news parameters: - name: id in: path required: true description: The unique "id" that corresponds to the batch file you would like to download. If none is supplied, returns a list of the available batch files. schema: type: integer responses: '200': description: Successful response '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto: get: operationId: listCryptoMeta summary: Get metadata for crypto tickers tags: - Crypto externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: tickers in: query required: false description: 'The ticker(s) associated with the crypto pair(s). Can either be a single string or an array of strings (string[]). Please note: no more than 100 tickers may be requested at this time. If no ticker(s) are passed, returns data for all supported crypto pairs.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/CryptoMeta' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto/top: get: operationId: getCryptoTopOfBook summary: Get top-of-book quotes for crypto tickers tags: - Crypto externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: tickers in: query required: true description: 'The ticker(s) associated with the crypto pair(s). Can either be a single string or an array of strings (string[]). Please note: no more than 100 tickers may be requested at this time.' schema: type: string - name: exchanges in: query required: false description: If you would like to limit the query to a subset of exchanes, pass a comma-separated list of exchanged to select. E.g. "POLONIEX, GDAX". schema: type: array items: *id001 - name: includeRawExchangeData in: query required: false description: If True, the endpoint will return all of the underlying exchange data used in the calculation. If this is set to true, there will be a new field called exchangeData for each crypto. This will contain the exchange-level OHLC for each asset. schema: type: boolean responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/CryptoTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto/prices: get: operationId: getCryptoPrices summary: Get historical crypto price data tags: - Crypto externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: tickers in: query required: true description: 'The ticker(s) associated with the crypto pair(s). Can either be a single string or an array of strings (string[]). Please note: no more than 100 tickers may be requested at this time.' schema: type: string - name: exchanges in: query required: false description: If you would like to limit the query to a subset of exchanes, pass a comma-separated list of exchanged to select. E.g. "POLONIEX, GDAX". schema: type: array items: *id001 - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or later than the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date-time - name: endDate in: query required: false description: f startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or less than the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date-time - name: resampleFreq in: query required: false description: 'This allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Units in minutes (min), hours (hour), and days (day) are accepted. Format is # + (min/hour/dau); e.g. "15min", "4hour" or "1day". If no value is provided, defaults to 5min.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/CryptoPrices' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto-yield/platforms: get: operationId: listCryptoYieldPlatforms summary: List crypto yield platforms tags: - Crypto Yield externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: platformCodes in: query required: false description: A list of platform codes to constrain the output to the given platforms. If passing it as a string in the URL, it can be a comma-separated list. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/YieldPlatform' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto-yield/pools: get: operationId: listCryptoYieldPools summary: List crypto yield pools tags: - Crypto Yield externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: poolCodes in: query required: false description: The pool code(s) associated with the Yield Pool. Can either be a single string or an array of strings (string[]). If no pool code(s) are passed, returns data for all supported yield pools. schema: type: string - name: platformCodes in: query required: false description: The platform code(s) associated with the Yield Pools that you would like to constrain the output by. Can either be a single string or an array of strings (string[]). If no platform code(s) are passed, returns data for all supported yield pools for all platforms. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/YieldPool' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto-yield/ticks: get: operationId: getCryptoYieldTicks summary: Get latest crypto yield metric ticks tags: - Crypto Yield externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: poolCodes in: query required: false description: The pool code(s) associated with the Yield Pool. Can either be a single string or an array of strings (string[]). If no pool code(s) are passed, returns data for all supported yield pools. schema: type: string - name: platformCodes in: query required: false description: The platform code(s) associated with the Yield Pools that you would like to constrain the output by. Can either be a single string or an array of strings (string[]). If no platform code(s) are passed, returns data for all supported yield pools for all platforms. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/YieldTick' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/crypto-yield/{poolCode}/metrics: get: operationId: getCryptoYieldMetrics summary: Get historical yield metrics for a pool tags: - Crypto Yield externalDocs: url: https://www.tiingo.com/documentation/crypto parameters: - name: poolCode in: path required: true description: The pool code associated with the yield pool. Must be a single pool code. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or later than the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date-time - name: endDate in: query required: false description: f startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or less than the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date-time - name: resampleFreq in: query required: false description: 'This allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Units in minutes (min), hours (hour), and days (day) are accepted. Format is # + (min/hour/dau); e.g. "15min", "4hour" or "1day". If no value is provided, defaults to 5min.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/YieldMetrics' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /iex: get: operationId: getIexTopOfBook summary: Get IEX top-of-book and last-sale quotes tags: - IEX externalDocs: url: https://www.tiingo.com/documentation/iex parameters: - name: tickers in: query required: false description: Ticker related to the asset. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/IexTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /iex/{ticker}/prices: get: operationId: getIexHistoricalPrices summary: Get IEX historical intraday prices for a ticker tags: - IEX externalDocs: url: https://www.tiingo.com/documentation/iex parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'his allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string - name: afterHours in: query required: false description: If set to true, includes pre and post market data if available. schema: type: boolean - name: forceFill in: query required: false description: Some tickers do not have a trade/quote update for a given time period. if forceFill is set to true, then the previous OHLC will be used to fill the current OHLC. schema: type: boolean responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/IexPriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /boats: get: operationId: getBoatsTopOfBook summary: Get BOATS overnight top-of-book and last-sale quotes (beta) tags: - BOATS externalDocs: url: https://www.tiingo.com/documentation/boats parameters: - name: tickers in: query required: false description: Ticker related to the asset. Pass a comma-separated list for multiple tickers (for example aapl,spy). schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/BoatsTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /boats/{ticker}/prices: get: operationId: getBoatsHistoricalPrices summary: Get BOATS overnight historical intraday prices for a ticker (beta) tags: - BOATS externalDocs: url: https://www.tiingo.com/documentation/boats parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. When both dates are omitted, Tiingo returns the latest overnight BOATS session window (8:00 PM-3:59 AM ET). schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. Date-only endDate values are normalized to the BOATS overnight session end (3:59 AM ET). schema: type: string format: date - name: resampleFreq in: query required: false description: 'This allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string - name: afterHours in: query required: false description: Accepted for request compatibility with other equity intraday endpoints, but it does not widen the BOATS historical window. BOATS history is limited to the overnight session (8:00 PM-3:59 AM ET) regardless of this flag. schema: type: boolean - name: forceFill in: query required: false description: Some tickers do not have a trade/quote update for a given time period. if forceFill is set to true, then the previous OHLC will be used to fill the current OHLC. schema: type: boolean responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/BoatsPriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/equity/intraday: get: operationId: getEquityRealtimeTopOfBook summary: Get consolidated equity realtime top-of-book snapshot (beta) tags: - Equity Realtime externalDocs: url: https://www.tiingo.com/documentation/equity-realtime-stock-data parameters: - name: tickers in: query required: false description: Ticker related to the asset. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/EquityRealtimeTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/equity/intraday/{ticker}/prices: get: operationId: getEquityRealtimeHistoricalPrices summary: Get consolidated equity realtime historical intraday prices (beta) tags: - Equity Realtime externalDocs: url: https://www.tiingo.com/documentation/equity-realtime-stock-data parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'This allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string - name: afterHours in: query required: false description: If set to true, includes pre and post market data if available. schema: type: boolean - name: forceFill in: query required: false description: Some tickers do not have a trade/quote update for a given time period. if forceFill is set to true, then the previous OHLC will be used to fill the current OHLC. schema: type: boolean responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/EquityRealtimePriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /smallx/meta: get: operationId: getSmallXMeta summary: Get Small Exchange contract metadata tags: - Small Exchange externalDocs: url: https://www.tiingo.com/documentation/small-exchange parameters: - name: tickers in: query required: false description: Specific tickers to return meta data for. If no string passed, will return meta data for all available tickers. Can either be a single ticker, a comma-separated list of tickers, or an array of strings (string[]). schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/SmallXMeta' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /smallx/tops: get: operationId: getSmallXTopOfBook summary: Get Small Exchange top-of-book quotes tags: - Small Exchange externalDocs: url: https://www.tiingo.com/documentation/small-exchange parameters: - name: tickers in: query required: false description: Ticker related to the asset. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/SmallXTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /smallx/{ticker}/prices: get: operationId: getSmallXIntradayPrices summary: Get Small Exchange intraday price history tags: - Small Exchange externalDocs: url: https://www.tiingo.com/documentation/small-exchange parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'his allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/SmallXPriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /smallx/{ticker}/eod: get: operationId: getSmallXEodPrices summary: Get Small Exchange end-of-day price history tags: - Small Exchange externalDocs: url: https://www.tiingo.com/documentation/small-exchange parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'Allows resampled values that allow you to choose the values returned as daily, weekly, monthly, or annually values. Note: ONLY DAILY takes into account holidays. All others use standard business days Acceptable values: daily : Values returned as daily periods, with a holiday calendar. weekly : Values returned as weekly data, with days ending on Friday. monthly : Values returned as monthly data, with days ending on the last standard business day (Mon-Fri) of each month. annually : Values returned as annual data, with days ending on the last standard business day (Mon-Fri) of each year. Note, that if you choose a value in-between the resample period for weekly, monthly, and daily, the start date rolls back to consider the entire period. For example, if you choose to resample weekly, but your "startDate" parameter is set to Wednesday of that week, the startDate will be adjusted to Monday, so the entire week is captured. Another example is if you send a startDate mid-month, we roll back the startDate to the beginning of the month. Similarly, if you provide an endDate, and it''s midway through the period, we roll-forward the date to capture the whole period. In the above example, if the end date is set to a wednesday with a weekly resample, the end date is rolled forward to the Friday of that week.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/SmallXEodBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fx/top: get: operationId: getForexTopOfBook summary: Get forex top-of-book quotes tags: - Forex externalDocs: url: https://www.tiingo.com/documentation/forex parameters: - name: tickers in: query required: false description: Ticker related to the asset. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/ForexTopOfBook' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fx/{ticker}/prices: get: operationId: getForexPrices summary: Get historical forex rates for a currency pair tags: - Forex externalDocs: url: https://www.tiingo.com/documentation/forex parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'his allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/ForexPriceBar' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/definitions: get: operationId: getFundamentalsDefinitions summary: Get definitions of available fundamentals fields tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsDefinition' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/meta: get: operationId: getFundamentalsMeta summary: Get fundamentals metadata for tickers tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: tickers in: query required: false description: Specific tickers to return meta data for. If no string passed, will return meta data for all available tickers. Can either be a single ticker, a comma-separated list of tickers, or an array of strings (string[]). schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsMeta' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/{ticker}/statements: get: operationId: getFundamentalsStatements summary: Get financial statement history for a ticker tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: ticker in: path required: true description: Required. Use the ticker for active symbols, or Tiingo PermaTicker (stable identifier) for delisted/recycled symbols. schema: type: string - name: asReported in: query required: false description: When false (default), the endpoint will return the most recent data, including any revisions for the reporting period. The dates will correspond to the fiscal end of the quarter or year. When true, the endpoint will return the data as it was reported on the release date. Similarly, the date will correspond to the date the filings were posted on the SEC. schema: type: boolean - name: startDate in: query required: false description: This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: sort in: query required: false description: 'This field allows you to specify the sort direct and which column to sort by. Prepend "-" if you want descending order, otherwise it will be ascending. E.g. sort=date will sort by date in ascending order. sort=-date will sort by date in descending order. NOTE: For Fundamentals statement only the "date" field may be sorted upon' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsStatement' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/{ticker}/daily: get: operationId: getFundamentalsDaily summary: Get daily fundamentals metrics for a ticker tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: ticker in: path required: true description: Required. Use the ticker for active symbols, or Tiingo PermaTicker (stable identifier) for delisted/recycled symbols. schema: type: string - name: startDate in: query required: false description: This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: sort in: query required: false description: This field allows you to specify the sort direct and which column to sort by. Prepend "-" if you want descending order, otherwise it will be ascending. E.g. sort=date will sort by date in ascending order. sort=-date will sort by date in descending order. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsDaily' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/funds/{ticker}: get: operationId: getFundFees summary: Get latest mutual fund / ETF fee data for a fund tags: - Fund Fees externalDocs: url: https://www.tiingo.com/documentation/mutual-fund-and-etf-fees parameters: - name: tickers in: query required: false description: Ticker related to the fund. schema: type: string - name: ticker in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundFees' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/funds/{ticker}/metrics: get: operationId: getFundFeeMetrics summary: Get historical fee metrics for a fund tags: - Fund Fees externalDocs: url: https://www.tiingo.com/documentation/mutual-fund-and-etf-fees parameters: - name: ticker in: path required: true description: Ticker related to the asset. schema: type: string - name: startDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: If startDate or endDate is not null, historical data will be queried. This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: resampleFreq in: query required: false description: 'his allows you to set the frequency in which you want data resampled. For example "1hour" would return the data where OHLC is calculated on an hourly schedule. The minimum value is "1min". Both units in minutes (min) and hours (hour) are accepted. Format is # + (min/hour); e.g. "15min" or "4hour". If no value is provided, defaults to 5min.' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundFeeMetrics' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/utilities/search: get: operationId: searchAssets summary: Search for assets by ticker or name tags: - Utilities externalDocs: url: https://www.tiingo.com/documentation/utilities/search parameters: - name: query in: query required: true description: The search query to use to look up assets. schema: type: string - name: exactTickerMatch in: query required: false description: True to only include exact ticker matches based on the search query. If set to true, no partial matches will be included and asset names will not be searched. schema: type: boolean - name: includeDelisted in: query required: false description: True to include delisted tickers and false (default) to exclude delisted tickers. schema: type: boolean - name: limit in: query required: false description: The maximum number of assets to return. Defaults to 10 and can be set to a maximum of 100. schema: type: integer responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/SearchResult' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /api/test: get: operationId: testConnection summary: Test API connectivity and authentication tags: - Utilities externalDocs: url: https://www.tiingo.com/documentation/general/connecting responses: '200': description: Successful response content: application/json: schema: type: object properties: message: type: string description: Confirmation message, e.g. 'You successfully sent a request'. '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' components: securitySchemes: apiTokenHeader: type: apiKey in: header name: Authorization description: 'Pass your API token in the Authorization header as: Authorization: Token .' apiTokenQuery: type: apiKey in: query name: token description: Pass your API token directly in the request URL via the token query parameter. responses: Unauthorized: description: Missing or invalid API token. TooManyRequests: description: Usage limit exceeded. Tiingo limits by hourly requests (reset every hour), daily requests (reset at midnight EST), and monthly bandwidth (reset the first of every month at midnight EST); there is no per-minute or per-second rate limit. schemas: CryptoTopOfBookData: type: object properties: quoteTimestamp: type: string format: date-time description: The timestamp the last time the quote (bid/ask) data was received from any crypto exchange. lastSaleTimestamp: type: string format: date-time description: The timestamp the last time the trade (last/lastSize) data was received from any crypto exchange. lastPrice: type: number description: Last price is the last price that was executed on any crypto exchange. lastSize: type: number description: The amount of crypto volume done at the last price in the base currency. lastSizeNotional: type: number description: 'The last size done for the asset on the specific date in the quote currency. The notional of the volume traded. In mathematical terms: lastSizeNotional = lastPrice * lastSize' lastExchange: type: string description: The full name of the exchange the "lastPrice" and "lastSize" were executed on. bidSize: type: number description: The amount of shares at the bid price. bidPrice: type: number description: The current bid price. bidExchange: type: string description: The full name of the exchange the "bidPrice" and "bidSize" are located on. askSize: type: number description: The amount of shares at the ask price. askPrice: type: number description: The current ask price. askExchange: type: string description: The full name of the exchange the "askPrice" and "askSize" are located on. CryptoPriceBar: type: object properties: date: type: string format: date-time description: The datetime this data pertains to. It will be a timestamp dependent upon the resampleFreq parameter. For example, if resampleFreq=5min, it will be in 5 min increments. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. tradesDone: type: integer description: The number of trades done on the given date. volume: type: number description: The volume done for the asset on the specific date in the base currency. volumeNotional: type: number description: 'The last size done for the asset on the specific date in the quote currency. The volume done for the asset on the specific date in the quote currency. In mathematical terms: volumeNotional = close * volume' FundamentalsStatementData: type: object properties: dataCode: type: string description: An identifier representing the fundamentals field the value belongs to. For example, "peRatio." value: type: number description: The value of the field corresponding to the dataCode DailyMeta: type: object properties: ticker: type: string description: Ticker related to the asset. name: type: string description: Full-length name of the asset. exchangeCode: type: string description: An identifier that maps which Exchange this asset is listed on. description: type: string description: Long-form descripton of the asset. startDate: type: string format: date description: The earliest date we have price data available for the asset. When null it means no price data available for the given asset. endDate: type: string format: date description: The latest date we have price data available for the asset. When null it means no price data available for the given asset. DailyPriceBar: type: object properties: date: type: string format: date description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. volume: type: integer description: The number of shares traded for the asset. adjOpen: type: number description: The adjusted opening price for the asset on the given date. adjHigh: type: number description: The adjusted high price for the asset on the given date. adjLow: type: number description: The adjusted low price for the asset on the given date. adjClose: type: number description: The adjusted closing price for the asset on the given date. adjVolume: type: integer description: The number of shares traded for the asset. divCash: type: number description: The dividend paid out on "date" (note that "date" will be the "exDate" for the dividend). splitFactor: type: number description: The factor used to adjust prices when a company splits, reverse splits, or pays a distribution. DistributionYield: type: object properties: date: type: string format: date-time description: Date associated with the yield. trailingDiv1Y: type: string description: The trailing distribution yield for the asset based on the previous 1 year of distributions. Distribution: type: object properties: permaTicker: type: string description: The Tiingo permaticker. ticker: type: string description: Ticker related to the asset. exDate: type: string format: date-time description: The ex-Date of the distribution. In the Tiingo EOD Endpoints, this is the date where "divCash" will be non-zero. This is also the date used for dividend price adjustments. paymentDate: type: string format: date-time description: The payment date of the distribution. recordDate: type: string format: date-time description: The record date of the distribution. declarationDate: type: string format: date-time description: The declaration date of the distribution. distribution: type: number description: The total distribution for the given date. distributionFreqency: type: string description: 'The frequency that''s associated with this distribution. For example "q" means quarterly, meaning this is a declared quarterly distribution. The full list of codes is available here: w : Weekly bm : Bimonthly m : Monthly tm : Trimesterly q : Quarterly sa : Semiannually a : Annually ir : Irregular f : Final u : Unspecified c : Cancelled' Split: type: object properties: permaTicker: type: string description: The Tiingo permaticker. ticker: type: string description: Ticker related to the asset. exDate: type: string format: date-time description: The ex-Date of the split. In the Tiingo EOD Endpoints, this is the date where "splitFactor" will not be 1.0. This is also the date used for split adjustments. splitFrom: type: number description: The prior split ratio. splitTo: type: number description: The new split ratio, i.e. how many shares of "splitTo" are given for each share of "splitFrom". splitFactor: type: number description: 'The ratio of splitTo from splitFrom . In other words: splitFactor = splitTo/splitFrom This ratio is helpful in calculating split price adjustments.' splitStatus: type: string description: 'A code representing the status of split a : Active c : Cancelled' NewsArticle: type: object properties: id: type: integer description: Unique identifier specific to the news article. title: type: string description: Title of the news article. url: type: string description: URL of the news article. description: type: string description: Long-form descripton of the news story. publishedDate: type: string format: date-time description: The datetime the news story was published in UTC. This is usually reported by the news source and not by Tiingo. If the news source does not declare a published date, Tiingo will use the time the news story was discovered by our crawler farm. crawlDate: type: string format: date-time description: The datetime the news story was added to our database in UTC. This is always recorded by Tiingo and the news source has no input on this date. If you note a large gap between crawlDate and publishedDate, it means the news article was backfilled, which usually happens when we add a new data source or gain access to historical data archives. source: type: string description: The domain the news source is from. tickers: type: array items: *id001 description: What tickers are mentioned in the news story using Tiingo's proprietary tagging algo. tags: type: array items: *id001 description: Tags that are mapped and discovered by Tiingo using Tiingo's proprietary tagging algo. NewsBulkFile: type: object properties: id: type: integer description: Unique identifier specific to the bulk download file. Used to select which file to download. url: type: string description: 'A url you can use to directly download the batch file. NOTE : This url contains your Auth Token and is meant to be a "copy/paste" url for your convenience' filename: type: string description: The filename of the batch file. batchType: type: string description: 'Describes what kind of batch file this is. The value will either be: "base" or "incremental". base is an entire dump of the data and incremental is a partial dump of the data. This should be used in conjunction with the startDate and endDate parameters to identify the bounds of the data dump.' startDate: type: string format: date description: The end date that was used to select the News objects to generate the batch file. This is not inclusive. publishedDate < endDate. fileSizeCompressed: type: integer description: The size of the file in bytes compressed using gzip. fileSizeUncompressed: type: integer description: The size of the file in bytes uncompressed. CryptoMeta: type: object properties: ticker: type: string description: Ticker related to the asset. baseCurrency: type: string description: The base pair of the cryptocurrency, e.g. "btc" for "btcusd". quoteCurrency: type: string description: The quote pair of the cryptocurrency, e.g. "usd" for "btcusd". name: type: string description: Full-length name of the asset. description: type: string description: Long-form descripton of the asset. CryptoTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. baseCurrency: type: string description: The base pair of the cryptocurrency, e.g. "btc" for "btcusd". quoteCurrency: type: string description: The quote pair of the cryptocurrency, e.g. "usd" for "btcusd". topOfBookData: allOf: - $ref: '#/components/schemas/CryptoTopOfBookData' description: Stores the top-of-book data being returned. See the table below for the fields in this object. exchangeData: type: object description: The underlying data for each exchange. This will only be returned if the includeRawExchangeData flag is set to "true". CryptoPrices: type: object properties: ticker: type: string description: Ticker related to the asset. baseCurrency: type: string description: The base pair of the cryptocurrency, e.g. "btc" for "btcusd". quoteCurrency: type: string description: The quote pair of the cryptocurrency, e.g. "usd" for "btcusd". priceData: allOf: - $ref: '#/components/schemas/CryptoPriceBar' description: Stores the top-of-book data being returned. See the table below for the fields in this object. exchangeData: type: object description: The underlying data for each exchange. This will only be returned if the includeRawExchangeData flag is set to "true". YieldPlatform: type: object properties: name: type: string description: Formatted name of the Yield Platform. platformCode: type: string description: A unique identifier for the Yield Platform that can be used throughout the API to map Yield Pools to the given Platform. Similar to exchangeCode in the equity endpoints. network: type: string description: The network this platform belongs to. E.g. ETH for mainnet, AVAX for Avalanche, SOL, for Solana.". YieldPool: type: object properties: name: type: string description: Name of the yield pool. poolCode: type: string description: A unique identifier mapped to this pool that can be used to query metric and tick data throughout the API. yieldPlatform: type: string description: The Yield Platform this pool belongs to. The value will be the platformCode of the corresponding Yield Platform.. borrowRateDenomination: type: string description: The cryptocurrency, or token, the borrow rate is denominated in. totalBorrowDenomination: type: string description: The cryptocurrency, or token, the borrow amount is denominated in. supplyRateDenomination: type: string description: The cryptocurrency, or token, the supply rate is denominated in. totalSupplyDenomination: type: string description: The cryptocurrency, or token, the supply amount is denominated in. YieldTick: type: object properties: date: type: string format: date-time description: The datetime this data pertains to. It will be a timestamp dependent upon the resampleFreq parameter. For example, if resampleFreq=5min, it will be in 5 min increments. poolCode: type: string description: A unique identifier mapped to this pool that can be used to query metric and tick data throughout the API. variableBorrowRate: type: number description: The variable borrow rate (multiply by 100 for percentage). totalStableBorrowAmount: type: number description: The stable borrow rate (multiply by 100 for percentage). totalVariableBorrowAmount: type: number description: The amount borrowed subject to the variable borrow rate. totalBorrowAmount: type: number description: The total amount borrowed (total = stable amount + variable amount) supplyRate: type: number description: The supply rate (multiply by 100 for percentage). totalSupplyAmount: type: number description: The close total supply amount on the given date. availableLiquidityAmount: type: number description: The amount of liquidity available that can be borrowed. YieldMetrics: type: object properties: date: type: string format: date-time description: The datetime this data pertains to. It will be a timestamp dependent upon the resampleFreq parameter. For example, if resampleFreq=5min, it will be in 5 min increments. openVariableBorrowRate: type: number description: The open variable borrow rate on the given date. highVariableBorrowRate: type: number description: The high variable borrow rate on the given date. lowVariableBorrowRate: type: number description: The low variable borrow rate on the given date. closeVariableBorrowRate: type: number description: The close variable borrow rate on the given date. openStableBorrowRate: type: number description: The open stable borrow rate on the given date. highStableBorrowRate: type: number description: The high stable borrow rate on the given date. lowStableBorrowRate: type: number description: The low stable borrow rate on the given date. closeStableBorrowRate: type: number description: The close stable borrow rate on the given date. openTotalVariableBorrowAmount: type: number description: The open variable borrow amount on the given date. highTotalVariableBorrowAmount: type: number description: The high variable borrow amount on the given date. lowTotalVariableBorrowAmount: type: number description: The low variable borrow amount on the given date. closeTotalVariableBorrowAmount: type: number description: The close variable borrow amount on the given date. openTotalStableBorrowAmount: type: number description: The open supply rate on the given date. highTotalStableBorrowAmount: type: number description: The high supply rate on the given date. lowTotalStableBorrowAmount: type: number description: The low supply rate on the given date. closeTotalStableBorrowAmount: type: number description: The close supply rate on the given date. openTotalBorrowAmount: type: number description: The open total borrow amount on the given date (total = stable amount + variable amount). highTotalBorrowAmount: type: number description: The high total borrow amount on the given date (total = stable amount + variable amount). lowTotalBorrowAmount: type: number description: The low total borrow amount on the given date (total = stable amount + variable amount). closeTotalBorrowAmount: type: number description: The close total borrow amount on the given date (total = stable amount + variable amount). openSupplyRate: type: number description: The open supply rate on the given date. highSupplyRate: type: number description: The high supply rate on the given date. lowSupplyRate: type: number description: The low supply rate on the given date. closeSupplyRate: type: number description: The close supply rate on the given date. openTotalSupplyAmount: type: number description: The open total supply amount on the given date. highTotalSupplyAmount: type: number description: The high total supply amount on the given date. lowTotalSupplyAmount: type: number description: The low total supply amount on the given date. closeTotalSupplyAmount: type: number description: The close total supply amount on the given date. openAvailableLiquidityAmount: type: number description: The open total available liquidity amount on the given date (amount that can be borrowed). highAvailableLiquidityAmount: type: number description: The high total supply amount on the given date (amount that can be borrowed). lowAvailableLiquidityAmount: type: number description: The low total supply amount on the given date (amount that can be borrowed). closeAvailableLiquidityAmount: type: number description: The close total supply amount on the given date (amount that can be borrowed). changesDetected: type: integer description: The number of changes detected for any of the above variables on blockchain during the resample window. IexTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. timestamp: type: string format: date-time description: The timestamp the data was last refresh on. quoteTimestamp: type: string format: date-time description: The timestamp the last time the quote (bid/ask) data was received from IEX. IEX entitlement required lastSaleTimestamp: type: string format: date-time description: The timestamp the last time the trade (last/lastSize) data was received from IEX. IEX entitlement required last: type: number description: Last is the last trade that was executed on IEX. IEX entitlement required lastSize: type: integer description: The amount of shares traded (volume) at the last price on IEX. IEX entitlement required tngoLast: type: number description: Tiingo Last is either the last price or mid price. The mid price is only used if our algo determines it is a good proxy for the last price. So if the spread is considered wide by our algo, we do not use it. Also, after the official exchange print comes in, this value changes to that value. This value is calculated by Tiingo and not provided by IEX . prevClose: type: number description: Previous day's closing price of the security.This can be from any of the exchanges, NYSE, NASDAQ, IEX, etc. open: type: number description: The opening price of the asset on the current day This value is calculated by Tiingo and not provided by IEX. high: type: number description: The high price of the asset on the current day This value is calculated by Tiingo and not provided by IEX. low: type: number description: The low price of the asset on the current day This value is calculated by Tiingo and not provided by IEX. mid: type: number description: 'The mid price of the current timestamp when both "bidPrice" and "askPrice" are not-null. In mathematical terms: mid = (bidPrice + askPrice)/2.0 This value is calculated by Tiingo and not provided by IEX.' volume: type: integer description: Volume will be IEX Volume throughout the day, but once the official closing price comes in, volume will reflect the volume done on the entire day across all exchanges. This field is available for convenience. bidSize: type: number description: The amount of shares at the bid price. IEX entitlement required bidPrice: type: number description: The current bid price. IEX entitlement required askSize: type: number description: The amount of shares at the ask price. IEX entitlement required askPrice: type: number description: The current ask price. IEX entitlement required IexPriceBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. volume: type: integer description: The number of shares traded on IEX only. This value will only be exposed if explicitly passed to the "columns" request parameter. E.g. ?columns=open,high,low,close, volume BoatsTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. timestamp: type: string format: date-time description: The timestamp the data was last refreshed on. quoteTimestamp: type: string format: date-time description: The timestamp of the last quote (bid/ask) update from BOATS. lastSaleTimestamp: type: string format: date-time description: The timestamp of the last trade (last/lastSize) update from BOATS. last: type: number description: Last is the last trade that was executed on BOATS. lastSize: type: integer description: The amount of shares traded (volume) at the last price on BOATS. tngoLast: type: number description: Tiingo Last is either the last price or mid price. The mid price is only used if our algo determines it is a good proxy for the last price. So if the spread is considered wide by our algo, we do not use it. Also, after the official exchange print comes in, this value changes to that value. This value is calculated by Tiingo and not provided by BOATS . prevClose: type: number description: Previous day's closing price of the security. This can be from any of the exchanges, NYSE, NASDAQ, IEX, etc. open: type: number description: The opening price of the asset on the current day. This value is calculated by Tiingo and not provided by BOATS. high: type: number description: The high price of the asset on the current day. This value is calculated by Tiingo and not provided by BOATS. low: type: number description: The low price of the asset on the current day. This value is calculated by Tiingo and not provided by BOATS. mid: type: number description: 'The mid price of the current timestamp when both "bidPrice" and "askPrice" are not-null. In mathematical terms: mid = (bidPrice + askPrice)/2.0 This value is calculated by Tiingo and not provided by BOATS.' volume: type: integer description: Live BOATS session volume for the ticker. Volume is never delayed on the BOATS REST endpoint. bidSize: type: number description: The amount of shares at the bid price on BOATS. bidPrice: type: number description: The current bid price on BOATS. askSize: type: number description: The amount of shares at the ask price on BOATS. askPrice: type: number description: The current ask price on BOATS. BoatsPriceBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. volume: type: integer description: The number of shares traded on BOATS only. This value will only be exposed if explicitly passed to the "columns" request parameter. E.g. ?columns=open,high,low,close, volume EquityRealtimeTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. timestamp: type: string format: date-time description: The timestamp the data was last refresh on. tngoLast: type: number description: Tiingo Last is either the last price or mid price. The mid price is only used if our algo determines it is a good proxy for the last price. So if the spread is considered wide by our algo, we do not use it. Also, after the official exchange print comes in, this value changes to that value. This value is calculated by Tiingo from the consolidated equity feed . lqRefPrice: type: number description: The same as tngoLast - mirrored for convenience/consistency as it's better-named for its role in the lq spread metrics. prevClose: type: number description: Previous day's closing price of the security. This can come from the supported consolidated equity market data sources. open: type: number description: The opening price of the asset on the current day This value is calculated by Tiingo from the consolidated equity feed. high: type: number description: The high price of the asset on the current day This value is calculated by Tiingo from the consolidated equity feed. low: type: number description: The low price of the asset on the current day This value is calculated by Tiingo from the consolidated equity feed. volume: type: integer description: Volume will be consolidated intraday volume throughout the day. Once the official closing price comes in, volume may reflect the full official trading day. This field is available for convenience. lqSpread: type: number description: The relative lqBid/Ask spread component of the liquidity risk metric, expressed as a decimal (e.g. 0.04 means 4%). Corresponds to lqSpread in the thresholdLevel 4 websocket liquidity risk metric. lqBidPrice: type: number description: The bid price component of the liquidity risk metric. Corresponds to lqBidPrice in the thresholdLevel 4 websocket liquidity risk metric. lqBidSize: type: integer description: The bid size component of the liquidity risk metric in shares. Corresponds to lqBidSize in the thresholdLevel 4 websocket liquidity risk metric. lqAskPrice: type: number description: The ask price component of the liquidity risk metric. Corresponds to lqAskPrice in the thresholdLevel 4 websocket liquidity risk metric. lqAskSize: type: integer description: The ask size component of the liquidity risk metric in shares. Corresponds to lqAskSize in the thresholdLevel 4 websocket liquidity risk metric. EquityRealtimePriceBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. volume: type: integer description: The consolidated number of shares traded for the interval. This value will only be exposed if explicitly passed to the "columns" request parameter. E.g. ?columns=open,high,low,close, volume SmallXMeta: type: object properties: permaTicker: type: string description: Permanent Tiingo Ticker mapping to the security. Can be used as a primary key. ticker: type: string description: Ticker related to the asset. name: type: string description: Full-length name of the asset. baseTicker: type: string description: The base ticker for the given contract. This is the base tickers that the calendar and year identifier are appended to in order to create the Small Exchange ticker. E.g. "SMO" baseCurrency: type: string description: The currency the contract is denominated in. cfiCode: type: string description: The standardized CFI code for the given contract. firstTradingDate: type: string format: date description: The first date the contract was able to be traded. lastTradingDate: type: string format: date description: The last date the contract is tradeable. expirationDate: type: string format: date description: The date the contract expires. maturityDate: type: string format: date description: The date the contract reaches maturity. tickSize: type: number description: The smallest amount the contract can increment or decrement by. tickMulitplier: type: number description: The amount you need to multiple the contract price by to get the notional (in baseCurrency) of the value of the contract. E.g. a price of 35.0 with a baseCurrency of USD and multiplier of 100, means each contract is worth $3500.00 (35 * 100). SmallXTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. timestamp: type: string format: date-time description: The timestamp the data was last refresh on. quoteTimestamp: type: string format: date-time description: The timestamp the last time the quote (bid/ask) data was received from the Small Exchange. lastSaleTimestamp: type: string format: date-time description: The timestamp the last time the trade (last/lastSize) data was received from Small Exchange. last: type: number description: Last is the last trade that was executed on Small Exchange. lastSize: type: integer description: The amount of shares traded (volume) at the last price on Small Exchange. tngoLast: type: number description: Tiingo Last is either the last price or mid price. The mid price is only used if our algo determines it is a good proxy for the last price. So if the spread is considered wide by our algo, we do not use it. Also, after the official exchange print comes in, this value changes to that value. This value is calculated by Tiingo and not provided by the Small Exchange . prevClose: type: number description: Previous day's closing price of the security. open: type: number description: The opening price of the asset on the current day as set by "tngoLast" in the docs. This value is calculated by Tiingo and not provided by the Small Exchange. high: type: number description: The high price of the asset on the current day as set by "tngoLast" in the docs. This value is calculated by Tiingo and not provided by the Small Exchange. low: type: number description: The close price of the asset on the current day as set by "tngoLast" in the docs. This value is calculated by Tiingo and not provided by the Small Exchange. mid: type: number description: 'The mid price of the current timestamp when both "bidPrice" and "askPrice" are not-null. In mathematical terms: mid = (bidPrice + askPrice)/2.0 This value is calculated by Tiingo and not provided by the Small Exchange.' volume: type: integer description: Total volume traded on the Small Exchange for the given instrument. bidSize: type: number description: The amount of shares at the bid price. bidPrice: type: number description: The current bid price. askSize: type: number description: The amount of shares at the ask price. askPrice: type: number description: The current ask price. openInterest: type: integer description: The current Open Interest for the given instrument. SmallXPriceBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. volume: type: integer description: The number of shares traded on the Small Exchange. SmallXEodBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. settlementPrice: type: number description: The settlement price of the contract as determined by the Small Exchange. volume: type: integer description: The number of shares traded on the Small Exchange. openInterest: type: integer description: The open interest of the contract. ForexTopOfBook: type: object properties: ticker: type: string description: Ticker related to the asset. quoteTimestamp: type: string format: date-time description: The timestamp the data was last refresh on. midPrice: type: number description: 'The mid price of the current timestamp when both "bidPrice" and "askPrice" are not-null. In mathematical terms: midPrice = (bidPrice + askPrice)/2.0' bidSize: type: number description: The amount of units at the bid price. bidPrice: type: number description: The current bid price. askSize: type: number description: The amount of units at the ask price. askPrice: type: number description: The current ask price. ForexPriceBar: type: object properties: date: type: string format: date-time description: The date this data pertains to. ticker: type: string description: Ticker related to the asset. open: type: number description: The opening price for the asset on the given date. high: type: number description: The high price for the asset on the given date. low: type: number description: The low price for the asset on the given date. close: type: number description: The closing price for the asset on the given date. FundamentalsDefinition: type: object properties: dataCode: type: string description: An identifier representing the fundamentals field the value belongs to. For example, "peRatio." name: type: string description: A human-friendly readable name of the field. description: type: string description: A description of the field. statementType: type: string description: One of four values ("balanceSheet", "incomeStatement", "cashFlow", "overview"), representing which statement this value belongs to. For example, "netIncome" would belong to "incomeStatement". units: type: string description: The unit the field value is in. Value is either "$", "%" or blank. If blank, value may either be an integer (like shares outstanding), or a ratio. FundamentalsMeta: type: object properties: permaTicker: type: string description: Permanent Tiingo Ticker mapping to the security. Can be used as a primary key. ticker: type: string description: Ticker related to the asset. name: type: string description: Full-length name of the asset. isActive: type: boolean description: Boolean describing whether or not the ticker is still actively traded. If false, this ticker is delisted. isADR: type: boolean description: Boolean describing whether or not the ticker is an ADR. Value is true if listed ticker is an ADR. sector: type: string description: Sector information that is derived from sicSector and is meant to approximate GICS. industry: type: string description: Sector information that is derived from sicIndustry and is meant to approximate GICS. sicCode: type: integer description: SIC Code that represents company's business activities. sicSector: type: string description: Sector as determined by the SIC Code. sicIndustry: type: string description: Industry as determined by the SIC Code. reportingCurrency: type: string description: The currency the company reports their SEC statement filings in. location: type: string description: Location/domicile of the company. States are included for U.S. companies, otherwise countries for non-US companies. companyWebsite: type: string description: The website of the company when available. secFilingWebsite: type: string description: A URL to where you can find the company's SEC filings directly on the SEC website. statementLastUpdated: type: string format: date-time description: The timestamp the statement data/endpoint was last updated for the ticker. dailyLastUpdated: type: string format: date-time description: The timestamp the daily data/endpoint was last updated for the ticker. FundamentalsStatement: type: object properties: date: type: string format: date-time description: The date the statement data was released to the public. quarter: type: integer description: An integer corresponding to the fiscal quarter reported. A value of "0" means this is an Annual Report. A value of "1" through "4" corresponds to the respective fiscal quarter. year: type: integer description: An integer corresponding to the fiscal year reported. statementData: allOf: - $ref: '#/components/schemas/FundamentalsStatementData' description: 'Statement data that is broken out by four different fields in a JSON object. Each fields corresponds to a statement. The four fields are: balanceSheet : Balance sheet data incomeStatement : Income Statement Data cashFlow : Cash flow statement data overview : Metrics and ratios that may be a combination of the fields from various statements Each field will return an array of "dataCode" and "value" pairs that are described in the "Statement Data Table" below.' FundamentalsDaily: type: object properties: date: type: string format: date-time description: The date the daily data corresponds to. marketCap: type: number description: The value of the field corresponding to the market capitalization. enterpriseVal: type: number description: The value of the field corresponding to the enterprise value. peRatio: type: number description: The value of the field corresponding to the price/earnings ratio. pbRatio: type: number description: The value of the field corresponding to the price/book ratio. trailingPEG1Y: type: number description: The value of the field corresponding to the trailing 1 year PEG Ratio. FundFees: type: object properties: ticker: type: string description: Ticker related to the fund. name: type: string description: Full-length name of the fund. description: type: string description: Long-form descripton of the fund. shareClass: type: string description: Share class of the fund as described by the parent fund company. netExpense: type: number description: The top-level net expense ratio for the fund. otherShareClasses: type: array items: &id002 type: object description: An array of objects representing related share classes of the given fund. See below for the object defintion table. FundFeeMetrics: type: object properties: prospectusDate: type: string format: date description: The prospectus date when the corresponding fund expense data was published. netExpense: type: number description: Fund's net expense ratio, or the net expenses related to the fund. grossExpense: type: number description: Fund's gross expense ratio, or the expenses related to running the fund. managementFee: type: number description: Fund's management fee, or the fees paid to the manager and/or advisors. 12b1: type: number description: Fund's fee related to marketing expenses. non12b1: type: number description: Fund's fee related to distribution and smilar non 12b-1 fees. otherExpenses: type: number description: Fund's other expenses, or expenses related to legal, adminstrative, custodial, etc. acquiredFundFees: type: number description: Fund's acquired fund fees, or expenses related to underlying businesses or funds. feeWaiver: type: number description: Fund's fee waiver, or discount on fees. exchangeFeeUSD: type: number description: Fund's exchange fee if charged in USD, or expenses related to exchanging or transferring funds to another fund in the fund's family. exchangeFeePercent: type: number description: Fund's exchange fee if charged as a percentage, or expenses related to exchanging or transferring funds to another fund in the fund's family. frontLoad: type: number description: Fund's front load fee, or the upfront fee charged when investing in the fund. backLoad: type: number description: Fund's back load fee, or the back-end fee charged when redeeming from the fund. dividendLoad: type: number description: Dividend load fee, or charges on reinvested dividends. shareholderFee: type: number description: Fund's shareholder fees, or the potential fees when buying/selling a fund. accountFeeUSD: type: number description: Fund's account fees if charged in USD, or the fee required to maintain your account in USD. accountFeePercent: type: number description: Fund's account fees if charged as a percentage, or the fee required to maintain your account in percentage terms. redemptionFeeUSD: type: number description: Fund's redemption fees if charged in USD, or the fee charged if funds are redeemed early (as defined by the fund company). redemptionFeePercent: type: number description: Fund's redemption fees as a percentage, or the fee charged if funds are redeemed early (as defined by the fund company). portfolioTurnover: type: number description: Portfolio turnover. miscFees: type: number description: Fund's miscellaneous fees. customFees: type: array items: *id002 description: Fund's custom fees. For a full breakdown, see the table below. SearchResult: type: object properties: ticker: type: string description: Ticker of the given asset. name: type: string description: The name of the asset. assetType: type: string description: The asset type of the asset (Stock, ETF, & Mutual Fund). isActive: type: boolean description: True if the ticker is still actively quoted, and false if the ticker is no longer actively quoted (delisted). permaTicker: type: string description: Placeholder for an upcoming change to the Tiingo API that allows querying by permaticker. openFIGI: type: string description: Placeholder for an upcoming change to the Tiingo API that allows querying by the openFIGI ticker.