Products
The product API is publicly available and provides information and specs for all products at the exchange.
Product API Endpoints
Get All Product Data
| HTTP Method | Endpoint |
|---|---|
GET | /product/data/ |
Returns a list of all product data objects for each product in the system.
Get Product Data by ID
| HTTP Method | Endpoint |
|---|---|
GET | /product/data/:product_id |
Returns the product data for the specified product, where :product_id is the product ID.
Get All Product Specs
| HTTP Method | Endpoint |
|---|---|
GET | /product/specs/ |
Returns a list of all product spec objects for each product in the system.
Get Product Spec by ID
| HTTP Method | Endpoint |
|---|---|
GET | /product/spec/:product_id |
Returns the spec for the specified product, where :product_id is the product ID.
Product API Flags
Each of these endpoints supports the following flags:
day, show products only for that given day, the current day is used if this is not supplied.active=true, filter products only to active products,active=falsehas the same behavior as omitting the flag altogether.base_symbol, show only products that share a given base symbol
Product API Objects
Product Data objects have the following TS type:
The Product Spec objects have the following TS type
;
;
;
;
;
Product API Fields
The following are the fields provided in the product data API. This data comes from sources such as the settlement process ran each day or live market activity. The settlement process is usually ran between 2:30 and 3:00 PM CT, or within 30 minutes of the daily settle time of the respective field for that process.
volume, open_interest, and open_interest_change have their own semantics. They are updated by
8:30 AM the following day. Those values will be null until they are published.
| Field | Notes |
|---|---|
| product_id | The product ID for a given product |
| last_price_time | The time of the last trade, updated live |
| last_price | The price of the last trade, updated live |
| settlement_time | The time that the settlement process was ran, updated by the settlement process |
| settlement_price | Settlement price, updated by the settlement process. When the product has expired this is the final settlement price. |
| settlement_price_comment | Settlement price comment, updated by the settlement process |
| open_price | Open price, updated live as the price of the first trade of the day |
| high_price | High price, updated live as the highest price of a trade for the day |
| low_price | Low price, updated live as the lowest price of a trade for the day |
| close_price | Close price, updated by the settlement process |
| price_change | Price change computed as either the percentage change between the last_price and settlement_price, or, if there are no trades on the day, the percentage change between the last two settlement prices. |
| volume | Trade volume, fetched from the clearing house, during trading it is updated live |
| notional_volume | Notional trade volume, fetched from the clearing house, during trading it is updated live |
| price_limit_upper | The upper price limit for the product |
| price_limit_lower | The lower price limit for the product |
| open_interest | Open interest, fetched from the clearing house |
| open_interest_change | Open interest change in number of contracts day over day. Positive for increases, negative for decreases. |
The following are the fields provided in the product spec API. These fields are mostly static, they do not change day to day. The changes seen through this API will be new contract listings near the end of a given quarter. If there are other changes, such as to market hours, customers will be notified well in advance of API changes.
The increment of price_band_variation is expressed in terms of the price_quotation_unit field.
| Field | Product Types | Notes |
|---|---|---|
| product_id | All | Product ID |
| product_name | All | Product name |
| max_order_quantity | All | Max order quantity |
| min_block_size | All | Minimum block size |
| price_band_variation | All | Price band variation |
| price_limit_percentage | All | Price limit percentage |
| type | All | Product type, either "future" or "spread" or "option" |
| first_trading_day | All | First trading day |
| final_settle_time | All | Final settle time |
| daily_open_time | All | Daily open time |
| daily_settle_time | All | Daily settle time |
| symbol | All | Bitnomial product symbol |
| cqg_symbol | All | CQG product symbol (for use on CQG IC/Desktop) |
| product_status | All | Product status, either "active" or "forthcoming" or "expired" |
| legs | Spread | Legs for a given spread product, with "product_id" and "weight" fields |
| underlying_product | Option | Product ID of the underlying product |
| strike_price | Option | Option strike price |
| option_type | Option | Option type, either call or put |
| margin_unit | Future | Margin unit |
| settlement_method | Future | Settlement method |
| contract_size | Future | Contract size |
| contract_size_unit | Future | Contract size unit |
| price_increment | Future | Price increment |
| price_quotation_unit | Future | Price quotation unit |
| month | Future | Contract month |
| year | Future | contract year |
| base_symbol | Future | Contract base symbol |
Start Trading
Trade US Perpetual Futures, Physical Futures, and Options on the Bitcoin Complex®, XRP, ETH, SOL, and more.