New to the Orders module? Read Order Flow first for the big picture — one endpoint, how the type is inferred, and how to listen for updates. This page assumes you’ve connected and authenticated.
When to use it
- You want to be filled right away and accept the prevailing price.
- The instrument is liquid (tight spread), so the market price is close to what you see.
How it works
- You
POST /v1/orderswithtype: "MARKET"and no price fields. - The order is accepted (
PENDING_NEW→NEW) and routed immediately. - It fills — often instantly and in full, sometimes in pieces (
PARTIALLY_FILLED→FILLED). - Each step arrives as an
account.orderevent on the Account WebSocket.
DAY market order placed during regular hours essentially always fills the same session.
Request
Example — buy 100 shares of AAPL at market
cURL
Request body
That’s the entire body. No
price, no stopPrice. The absence of a legs array makes this an equity order.Example — sell to close 50 shares
Response
clOrdId — it identifies this order in every WebSocket update and is what you pass as origClOrdId to cancel it.
Watch it fill
A market order typically fills moments after acknowledgement. You’ll see the fill as anaccount.order event with ordStatus: "FILLED" and a real avgPrice:
account.order event
Common rejections
Next steps
Limit order
Control your fill price instead of taking the market.
Stop order
Trigger a market order only once a price level is hit.
Place Order API
Interactive reference and full schema for
POST /v1/orders.Preview Order
Estimate cost and buying-power impact before placing.