Polygon Us Futures API

The us_futures API from Polygon — 8 operation(s) for us_futures.

Operations 8

GET /futures/v1/contracts futures contracts API #
GET /futures/v1/exchanges #
GET /futures/v1/market-status Market Status API #
GET /futures/v1/products Futures Products API #
GET /futures/v1/quotes/{ticker} #
GET /futures/v1/schedules Futures Schedules API #
GET /futures/v1/snapshot futures_snapshot_v1 API #
GET /futures/v1/trades/{ticker} #

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/polygon-us-futures-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

polygon-us-futures-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The future of fintech.
  title: Polygon Us Futures API
  version: 1.0.0
servers:
- description: Polygon Platform API
  url: https://api.polygon.io
- description: Polygon Platform API (Staging)
  url: https://api.staging.polygon.io
security:
- apiKey: []
tags:
- name: us_futures
paths:
  /futures/v1/contracts:
    get:
      description: 'The Contracts API provides a single source for discovering all listed futures contracts and retrieving complete contract specifications. You can query the full contract index with filters for product code, trade dates, active status, and date, returning key attributes such as ticker, first and last trade dates, days to maturity, exchange code, and order quantity limits in paginated form. The same API also returns the full specification for a single contract, including settlement dates, tick sizes, and other trading and risk related fields. Point-in-time lookups allow you to reconstruct the exact contract definition that applied on any given day.


        Use Cases: Historical research, trading system integration, portfolio workflows, risk management.'
      operationId: get_futures_v1_contracts
      parameters:
      - description: A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date
        schema:
          type: string
      - description: Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.gte
        schema:
          type: string
      - description: Filter less than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.lt
        schema:
          type: string
      - description: Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.lte
        schema:
          type: string
      - description: The identifier for the contract's product.
        in: query
        name: product_code
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: product_code.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: product_code.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: product_code.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: product_code.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: product_code.lte
        schema:
          type: string
      - description: The ticker for the contract.
        in: query
        name: ticker
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: ticker.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: ticker.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: ticker.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: ticker.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: ticker.lte
        schema:
          type: string
      - description: Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise.
        in: query
        name: active
        schema:
          type: boolean
      - description: The type of contract, one of 'single' or 'combo'. Leaving this filter blank will query for contracts where type is 'single', 'combo' or empty. This field only exists on contracts as of 2025-03-12 and later. It will be null when date < 2025-03-12.
        in: query
        name: type
        schema:
          enum:
          - single
          - combo
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: type.any_of
        schema:
          enum:
          - single
          - combo
          type: string
      - description: The first day on which the contract was tradeable. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: first_trade_date
        schema:
          type: string
      - description: Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: first_trade_date.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: first_trade_date.gte
        schema:
          type: string
      - description: Filter less than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: first_trade_date.lt
        schema:
          type: string
      - description: Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: first_trade_date.lte
        schema:
          type: string
      - description: The last day on which the contract was tradeable. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: last_trade_date
        schema:
          type: string
      - description: Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: last_trade_date.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: last_trade_date.gte
        schema:
          type: string
      - description: Filter less than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: last_trade_date.lt
        schema:
          type: string
      - description: Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: last_trade_date.lte
        schema:
          type: string
      - description: Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '1000'.
        in: query
        name: limit
        schema:
          default: 100
          maximum: 1000
          minimum: 1
          type: integer
      - description: A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'product_code' if not specified. The sort order defaults to 'asc' if not specified.
        in: query
        name: sort
        schema:
          default: product_code.asc
          type: string
      responses:
        '200':
          content:
            application/json:
              example:
                next_url: https://api.massive.com/futures/v1/contracts?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy
                request_id: 000a000a0a0a000a0a0aa00a0a0000a0
                results:
                - active: true
                  date: '2025-02-26'
                  days_to_maturity: 138
                  first_trade_date: '2025-01-15'
                  group_code: CN
                  last_trade_date: '2025-07-14'
                  max_order_quantity: 1999
                  min_order_quantity: 1
                  name: 00CN5 Future
                  product_code: 00C
                  settlement_date: '2025-07-14'
                  settlement_tick_size: 0.0025
                  spread_tick_size: 0.0025
                  ticker: 00CN5
                  trade_tick_size: 0.0025
                  trading_venue: XCBT
                  type: single
                status: OK
              schema:
                properties:
                  next_url:
                    description: If present, this value can be used to fetch the next page.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  results:
                    description: The results for this request.
                    items:
                      properties:
                        active:
                          description: Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise.
                          type: boolean
                        date:
                          description: A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day.
                          format: date
                          type: string
                        days_to_maturity:
                          description: The number of calendar days between the 'date' and the contract's final settlement date.
                          format: int64
                          type: integer
                        first_trade_date:
                          description: The first day on which the contract was tradeable.
                          format: date
                          type: string
                        group_code:
                          description: An identifier used to identify logical groups of products. The group_code is only populated for contracts listed for trading on CME Globex.
                          type: string
                        last_trade_date:
                          description: The last day on which the contract was tradeable.
                          format: date
                          type: string
                        max_order_quantity:
                          description: The maximum order quantity.
                          format: int64
                          type: integer
                        min_order_quantity:
                          description: The minimum order quantity.
                          format: int64
                          type: integer
                        name:
                          description: The name of this contract.
                          type: string
                        product_code:
                          description: The identifier for the contract's product.
                          type: string
                        settlement_date:
                          description: The date on which this contract settles.
                          format: date
                          type: string
                        settlement_tick_size:
                          description: The tick size for settlement.
                          format: double
                          type: number
                        spread_tick_size:
                          description: The tick size for spreads.
                          format: double
                          type: number
                        ticker:
                          description: The ticker for the contract.
                          type: string
                        trade_tick_size:
                          description: The tick size for trades.
                          format: double
                          type: number
                        trading_venue:
                          description: The trading venue (MIC) for the exchange on which this contract trades.
                          type: string
                        type:
                          description: The type of contract, one of 'single' or 'combo'. Leaving this filter blank will query for contracts where type is 'single', 'combo' or empty. This field only exists on contracts as of 2025-03-12 and later. It will be null when date < 2025-03-12.
                          type: string
                      required:
                      - active
                      - date
                      type: object
                    type: array
                  status:
                    description: The status of this request's response.
                    enum:
                    - OK
                    type: string
                required:
                - status
                - request_id
                - results
                type: object
          description: A list of results.
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: A message describing the source of the error.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  status:
                    description: The status of this request's response.
                    enum:
                    - ERROR
                    type: string
                required:
                - status
                - request_id
                - error
                type: object
          description: An error message.
      summary: futures contracts API
      tags:
      - us_futures
  /futures/v1/exchanges:
    get:
      description: US futures exchanges and trading venues including major derivatives exchanges (CME, CBOT, NYMEX, COMEX) and other futures market infrastructure for commodity, financial, and other derivative contract trading.
      operationId: get_futures_v1_exchanges
      parameters:
      - description: Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '1000'.
        in: query
        name: limit
        schema:
          default: 100
          maximum: 1000
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              example:
                count: 1
                request_id: 1
                results:
                - acronym: CME
                  id: '4'
                  locale: US
                  mic: XCME
                  name: Chicago Mercantile Exchange
                  operating_mic: XCME
                  type: exchange
                  url: https://cmegroup.com
                status: OK
              schema:
                properties:
                  next_url:
                    description: If present, this value can be used to fetch the next page.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  results:
                    description: The results for this request.
                    items:
                      properties:
                        acronym:
                          description: Well-known acronym for the exchange (e.g., 'CME', 'NYMEX', 'CBOT', 'COMEX').
                          type: string
                        id:
                          description: Numeric identifier for the futures exchange or trading venue.
                          type: string
                        locale:
                          description: Geographic location code where the exchange operates.
                          type: string
                        mic:
                          description: Market Identifier Code (MIC) - ISO 10383 standard four-character code for the futures market.
                          type: string
                        name:
                          description: Full official name of the futures exchange (e.g., 'Chicago Mercantile Exchange', 'New York Mercantile Exchange').
                          type: string
                        operating_mic:
                          description: Operating Market Identifier Code for the futures exchange.
                          type: string
                        type:
                          description: Type of venue - 'exchange' for futures exchanges and derivatives trading platforms.
                          type: string
                        url:
                          description: Official website URL of the futures exchange organization.
                          type: string
                      required:
                      - id
                      - type
                      - name
                      type: object
                    type: array
                  status:
                    description: The status of this request's response.
                    enum:
                    - OK
                    type: string
                required:
                - status
                - request_id
                - results
                type: object
          description: A list of results.
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: A message describing the source of the error.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  status:
                    description: The status of this request's response.
                    enum:
                    - ERROR
                    type: string
                required:
                - status
                - request_id
                - error
                type: object
          description: An error message.
      tags:
      - us_futures
  /futures/v1/market-status:
    get:
      description: 'Retrieve the current market status for a specific product or products. This endpoint returns real-time indicators, such as open, pause, close, for futures products, along with the corresponding exchange and product codes and an evaluation timestamp. This information enables users to monitor operational conditions and adjust their trading strategies accordingly.


        Use Cases: Real-time monitoring, algorithm scheduling, UI updates, operational planning.'
      operationId: get_futures_v1_market-status
      parameters:
      - description: The product code of the futures contracts for which you want statuses.
        in: query
        name: product_code
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: product_code.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: product_code.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: product_code.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: product_code.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: product_code.lte
        schema:
          type: string
      - description: Limit the maximum number of results returned. Defaults to '10' if not specified. The maximum allowed limit is '100'.
        in: query
        name: limit
        schema:
          default: 10
          maximum: 100
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              example:
                request_id: 445ebfcfe5bb4b688b7971e1600c952d
                results:
                - market_event: open
                  name: ERCOT North 345 kV Hub Day-Ahead 5 MW Off-Peak Futures
                  product_code: ERL
                  session_end_date: '2025-12-05'
                  timestamp: '2025-12-04T23:00:00+00:00'
                  trading_venue: XNYM
                status: OK
              schema:
                properties:
                  next_url:
                    description: If present, this value can be used to fetch the next page.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  results:
                    description: The results for this request.
                    items:
                      properties:
                        market_event:
                          description: The current status of the market for the product.
                          type: string
                        name:
                          description: The name of the futures product.
                          type: string
                        product_code:
                          description: The product code of the futures contracts for which you want statuses.
                          type: string
                        session_end_date:
                          description: The trading date for the current session.
                          format: date
                          type: string
                        timestamp:
                          description: The timestamp for the given market event.
                          type: string
                        trading_venue:
                          description: The trading venue (MIC) for the exchange on which the corresponding product trades.
                          type: string
                      type: object
                    type: array
                  status:
                    description: The status of this request's response.
                    enum:
                    - OK
                    type: string
                required:
                - status
                - request_id
                - results
                type: object
          description: A list of results.
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: A message describing the source of the error.
                    type: string
                  request_id:
                    description: A request id assigned by the server.
                    type: string
                  status:
                    description: The status of this request's response.
                    enum:
                    - ERROR
                    type: string
                required:
                - status
                - request_id
                - error
                type: object
          description: An error message.
      summary: Market Status API
      tags:
      - us_futures
  /futures/v1/products:
    get:
      description: 'The Products API is a unified source for discovering all supported futures products and retrieving full product specifications. It returns the complete product universe with product codes, names, exchange identifiers, sector and asset class classifications, product type, settlement method, and pricing and quotation details. You can filter by name, exchange, sector, asset class, product type, or date to capture the product set or product definition that existed at a specific point in time. It also retrieves the full specification for a single product, supporting accurate system configuration, analytics, trading workflows, and historical reconciliation.


        Use Cases: Product specification, historical product checks, risk management, trading system integration.'
      operationId: get_futures_v1_products
      parameters:
      - description: The full name of the product.
        in: query
        name: name
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: name.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: name.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: name.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: name.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: name.lte
        schema:
          type: string
      - description: The identifier for the product.
        in: query
        name: product_code
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: product_code.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: product_code.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: product_code.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: product_code.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: product_code.lte
        schema:
          type: string
      - description: A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about products for the specified day. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date
        schema:
          type: string
      - description: Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.gte
        schema:
          type: string
      - description: Filter less than the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.lt
        schema:
          type: string
      - description: Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.
        in: query
        name: date.lte
        schema:
          type: string
      - description: The trading venue (MIC) for the exchange on which this product's contracts trade.
        in: query
        name: trading_venue
        schema:
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: trading_venue.any_of
        schema:
          type: string
      - description: Filter greater than the value.
        in: query
        name: trading_venue.gt
        schema:
          type: string
      - description: Filter greater than or equal to the value.
        in: query
        name: trading_venue.gte
        schema:
          type: string
      - description: Filter less than the value.
        in: query
        name: trading_venue.lt
        schema:
          type: string
      - description: Filter less than or equal to the value.
        in: query
        name: trading_venue.lte
        schema:
          type: string
      - description: The sector to which the product belongs.
        in: query
        name: sector
        schema:
          enum:
          - asia
          - base
          - biofuels
          - coal
          - cross_rates
          - crude_oil
          - custom_index
          - dairy
          - dj_ubs_ci
          - electricity
          - emissions
          - europe
          - fertilizer
          - forestry
          - grains_and_oilseeds
          - intl_index
          - liq_nat_gas_lng
          - livestock
          - long_term_gov
          - long_term_non_gov
          - majors
          - minors
          - nat_gas
          - nat_gas_liq_petro
          - precious
          - refined_products
          - s_and_p_gsci
          - sel_sector_index
          - short_term_gov
          - short_term_non_gov
          - softs
          - us
          - us_index
          - wet_bulk
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: sector.any_of
        schema:
          enum:
          - asia
          - base
          - biofuels
          - coal
          - cross_rates
          - crude_oil
          - custom_index
          - dairy
          - dj_ubs_ci
          - electricity
          - emissions
          - europe
          - fertilizer
          - forestry
          - grains_and_oilseeds
          - intl_index
          - liq_nat_gas_lng
          - livestock
          - long_term_gov
          - long_term_non_gov
          - majors
          - minors
          - nat_gas
          - nat_gas_liq_petro
          - precious
          - refined_products
          - s_and_p_gsci
          - sel_sector_index
          - short_term_gov
          - short_term_non_gov
          - softs
          - us
          - us_index
          - wet_bulk
          type: string
      - description: The sub-sector to which the product belongs.
        in: query
        name: sub_sector
        schema:
          enum:
          - asian
          - canadian
          - cat
          - cooling_degree_days
          - ercot
          - european
          - gulf
          - heating_degree_days
          - iso_ne
          - large_cap_index
          - mid_cap_index
          - miso
          - north_american
          - nyiso
          - pjm
          - small_cap_index
          - west
          - western_power
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: sub_sector.any_of
        schema:
          enum:
          - asian
          - canadian
          - cat
          - cooling_degree_days
          - ercot
          - european
          - gulf
          - heating_degree_days
          - iso_ne
          - large_cap_index
          - mid_cap_index
          - miso
          - north_american
          - nyiso
          - pjm
          - small_cap_index
          - west
          - western_power
          type: string
      - description: The asset class to which the product belongs.
        in: query
        name: asset_class
        schema:
          enum:
          - alt_investment
          - commodity
          - financials
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: asset_class.any_of
        schema:
          enum:
          - alt_investment
          - commodity
          - financials
          type: string
      - description: The asset sub-class to which the product belongs.
        in: query
        name: asset_sub_class
        schema:
          enum:
          - agricultural
          - commodity_index
          - energy
          - equity
          - foreign_exchange
          - freight
          - housing
          - interest_rate
          - metals
          - weather
          type: string
      - description: Filter equal to any of the values. Multiple values can be specified by using a comma separated list.
        in: query
        name: asset_sub_class.any_of
        schema:
          enum:
          - agricultural
          - commodity_index
          - energy
          - equity
          - foreign_exchange
          - freight
          - housing
          - interest_rate
          - metals
          - weather
          type: string
      - description: The type of product, one of 'single' or 'combo'. Leaving this filter blank will query for both 's

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