Options Trading
The Options Trading API supports placing, modifying, and cancelling single-leg options orders on the US market.
Order Lifecycle
Options orders follow the same lifecycle as stock orders:
- Preview — Estimate costs and fees before committing
- Place — Submit the order
- Replace — Modify price or quantity while the order is open
- Cancel — Cancel a pending order
Key Parameters
| Parameter | Required | Description |
|---|---|---|
account_id | Yes | Trading account identifier |
client_order_id | Yes | Unique client-defined order ID (max 32 chars, must be unique per account) |
combo_type | Yes | NORMAL for single-leg orders |
symbol | Yes | Underlying symbol (e.g., AAPL) |
instrument_type | Yes | OPTION for options orders |
market | Yes | US |
order_type | Yes | MARKET, LIMIT, STOP_LOSS, or STOP_LOSS_LIMIT |
side | Yes | BUY or SELL |
quantity | Yes | Number of contracts |
entrust_type | Yes | QTY (by quantity) |
time_in_force | Yes | DAY or GTC |
option_strategy | Yes | SINGLE for single-leg orders |
position_intent | Yes | BUY_TO_OPEN, BUY_TO_CLOSE, SELL_TO_OPEN, or SELL_TO_CLOSE |
limit_price | Conditional | Required for LIMIT, STOP_LOSS_LIMIT |
stop_price | Conditional | Required for STOP_LOSS, STOP_LOSS_LIMIT |
legs | Yes | Array of option leg details |
Leg Parameters
| Parameter | Required | Description |
|---|---|---|
symbol | Yes | Underlying symbol |
strike_price | Yes | Option strike price |
option_expire_date | Yes | Expiration date (YYYY-MM-DD) |
instrument_type | Yes | OPTION |
option_type | Yes | CALL or PUT |
market | Yes | US |
Request Example
- Single Leg Limit
Buy to open 1 contract of AAPL $220 Call expiring 2025-11-19 at a limit price of $11.25.
{
"account_id": "<your_account_id>",
"new_orders": [
{
"client_order_id": "<unique_id>",
"combo_type": "NORMAL",
"symbol": "AAPL",
"instrument_type": "OPTION",
"market": "US",
"order_type": "LIMIT",
"limit_price": "11.25",
"quantity": "1",
"option_strategy": "SINGLE",
"position_intent": "BUY_TO_OPEN",
"side": "BUY",
"time_in_force": "DAY",
"entrust_type": "QTY",
"legs": [
{
"symbol": "AAPL",
"strike_price": "220.00",
"option_expire_date": "2025-11-19",
"instrument_type": "OPTION",
"option_type": "CALL",
"market": "US"
}
]
}
]
}
Querying Option Contracts
Before placing an options order, use the List Option Contracts endpoint to retrieve available option contracts for a given underlying symbol. This returns static contract information including strike prices, expiration dates, and contract types.
What's Next
- Trading API Overview — Full feature matrix by market
- Stock Trading — Stock order management
- Trading API FAQ — Common questions and troubleshooting