Tiingo Small Exchange API

The Small Exchange API from Tiingo — 4 operation(s) for small exchange.

Operations 4

GET /smallx/meta Get Small Exchange contract metadata #
GET /smallx/tops Get Small Exchange top-of-book quotes #
GET /smallx/{ticker}/prices Get Small Exchange intraday price history #
GET /smallx/{ticker}/eod Get Small Exchange end-of-day price history #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tiingo-small-exchange-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tiingo-small-exchange-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tiingo Small Exchange 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
servers:
- url: https://api.tiingo.com
security:
- apiTokenHeader: []
- apiTokenQuery: []
tags:
- name: Small Exchange
paths:
  /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'
components:
  schemas:
    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).
    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.
    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.
  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.
  securitySchemes:
    apiTokenHeader:
      type: apiKey
      in: header
      name: Authorization
      description: 'Pass your API token in the Authorization header as: Authorization: Token <your-token>.'
    apiTokenQuery:
      type: apiKey
      in: query
      name: token
      description: Pass your API token directly in the request URL via the token query parameter.
externalDocs:
  description: Tiingo API documentation
  url: https://www.tiingo.com/documentation/general/overview