Tiingo End-of-Day API

Daily OHLCV history for 100,000+ US equities and ETFs back to 1962, with split and dividend adjustments.

OpenAPI Specification

tiingo-openapi.yml Raw ↑
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 BOAT

# --- truncated at 32 KB (109 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tiingo/refs/heads/main/openapi/tiingo-openapi.yml