## Submit Orders `v1.orders.submit_orders(intaccount_id, OrderSubmitOrdersParams**kwargs) -> OrderSubmitOrdersResponse` **post** `/v1/accounts/{account_id}/orders` Submit new orders ### Parameters - `account_id: int` - `orders: Iterable[Order]` - `class OrderNewOrderMultilegRequest: …` Multileg strategy order request - `legs: Iterable[OrderNewOrderMultilegRequestLeg]` Legs that compose the strategy. - `instrument_type: SecurityType` Security type for the leg. - `"COMMON_STOCK"` - `"PREFERRED_STOCK"` - `"OPTION"` - `"CASH"` - `"OTHER"` - `ratio: str` Ratio for the leg. - `security: str` Trading symbol (e.g. "AAPL" or OSI symbol for options) - `side: Side` Leg side. - `"BUY"` - `"SELL"` - `"SELL_SHORT"` - `"OTHER"` - `id: Optional[str]` Optional leg reference identifier. - `position_effect: Optional[PositionEffect]` Optional leg position effect. - `"OPEN"` - `"CLOSE"` - `order_type: RequestOrderType` Type of order (currently MARKET or LIMIT for multileg strategy submission) - `"MARKET"` - `"LIMIT"` - `"STOP"` - `"STOP_LIMIT"` - `"TRAILING_STOP"` - `"TRAILING_STOP_LIMIT"` - `time_in_force: RequestTimeInForce` Time in force - `"DAY"` - `"GOOD_TILL_CANCEL"` - `"IMMEDIATE_OR_CANCEL"` - `"FILL_OR_KILL"` - `"GOOD_TILL_DATE"` - `"AT_THE_OPENING"` - `"AT_THE_CLOSE"` - `"GOOD_TILL_CROSSING"` - `"GOOD_THROUGH_CROSSING"` - `"AT_CROSSING"` - `id: Optional[str]` Optional client-provided unique ID (idempotency). Required to be unique per account. - `limit_price: Optional[str]` Strategy price, required for LIMIT orders. - `quantity: Optional[str]` Optional strategy-level quantity. Multiplies leg quantities. Defaults to 1. - `class NewOrderRequest: …` Request to submit a new order (PlaceOrderRequest from spec) - `instrument_type: SecurityType` Type of security - `order_type: RequestOrderType` Type of order - `quantity: str` Quantity to trade. For COMMON_STOCK: shares (may be fractional if supported). For OPTION (single-leg): contracts (must be an integer) - `side: Side` Side of the order - `time_in_force: RequestTimeInForce` Time in force - `id: Optional[str]` Optional client-provided unique ID (idempotency). Required to be unique per account. - `expires_at: Optional[datetime]` The timestamp when the order should expire (UTC). Required when time_in_force is GOOD_TILL_DATE. - `extended_hours: Optional[bool]` Allow trading outside regular trading hours. Some brokers disallow options outside RTH. - `instrument_id: Optional[InstrumentIDOrSymbol]` OEMS instrument UUID - `limit_offset: Optional[str]` Limit offset for trailing stop-limit orders (signed) - `limit_price: Optional[str]` Limit price (required for LIMIT and STOP_LIMIT orders) - `position_effect: Optional[PositionEffect]` Required when instrument_type is OPTION. Specifies whether the order opens or closes a position. - `stop_price: Optional[str]` Stop price (required for STOP and STOP_LIMIT orders) - `symbol: Optional[str]` Trading symbol. For equities, use the ticker symbol (e.g., "AAPL"). For options, use the OSI symbol (e.g., "AAPL 250117C00190000"). Either `symbol` or `instrument_id` must be provided. - `trailing_offset: Optional[str]` Trailing offset amount (required for trailing orders) - `trailing_offset_type: Optional[TrailingOffsetType]` Trailing offset type (PRICE or PERCENT_BPS) - `"PRICE"` - `"BPS"` ### Returns - `class OrderSubmitOrdersResponse: …` - `data: OrderList` - `id: str` Engine-assigned unique identifier for this order (UUID). - `account_id: int` Account placing the order - `client_order_id: str` Client-provided identifier echoed back (FIX tag 11). - `created_at: datetime` Timestamp when order was created (UTC) - `filled_quantity: str` Cumulative filled quantity - `instrument_id: str` OEMS instrument UUID for the traded instrument. - `instrument_type: SecurityType` Type of security - `"COMMON_STOCK"` - `"PREFERRED_STOCK"` - `"OPTION"` - `"CASH"` - `"OTHER"` - `leaves_quantity: str` Remaining unfilled quantity - `order_type: OrderType` Type of order (MARKET, LIMIT, etc.) - `"MARKET"` - `"LIMIT"` - `"STOP"` - `"STOP_LIMIT"` - `"TRAILING_STOP"` - `"TRAILING_STOP_LIMIT"` - `"OTHER"` - `quantity: str` Total order quantity - `side: Side` Side of the order (BUY, SELL, SELL_SHORT) - `"BUY"` - `"SELL"` - `"SELL_SHORT"` - `"OTHER"` - `status: OrderStatus` Current status of the order - `"PENDING_NEW"` - `"NEW"` - `"PARTIALLY_FILLED"` - `"FILLED"` - `"CANCELED"` - `"REJECTED"` - `"EXPIRED"` - `"PENDING_CANCEL"` - `"PENDING_REPLACE"` - `"REPLACED"` - `"DONE_FOR_DAY"` - `"STOPPED"` - `"SUSPENDED"` - `"CALCULATED"` - `"OTHER"` - `symbol: str` Trading symbol - `time_in_force: TimeInForce` Time in force instruction - `"DAY"` - `"GOOD_TILL_CANCEL"` - `"IMMEDIATE_OR_CANCEL"` - `"FILL_OR_KILL"` - `"GOOD_TILL_DATE"` - `"AT_THE_OPENING"` - `"AT_THE_CLOSE"` - `"GOOD_TILL_CROSSING"` - `"GOOD_THROUGH_CROSSING"` - `"AT_CROSSING"` - `"OTHER"` - `updated_at: datetime` Timestamp of the most recent update (UTC) - `venue: str` MIC code of the venue where the order is routed - `average_fill_price: Optional[str]` Average fill price across all executions - `details: Optional[List[str]]` Contains execution, rejection or cancellation details, if any - `expires_at: Optional[datetime]` Timestamp when the order will expire (UTC). Present when time_in_force is GOOD_TILL_DATE. - `extended_hours: Optional[bool]` Whether the order is eligible for extended-hours trading. - `limit_offset: Optional[str]` Limit offset for trailing stop-limit orders (signed) - `limit_price: Optional[str]` Limit price (for LIMIT and STOP_LIMIT orders) - `queue_state: Optional[QueueState]` Parent order queue state, present when the order is awaiting release or released. - `"AWAITING_RELEASE"` - `"RELEASED"` - `releases_at: Optional[datetime]` Scheduled release time for orders awaiting release. - `stop_price: Optional[str]` Stop price (for STOP and STOP_LIMIT orders) - `trailing_limit_px: Optional[str]` Current trailing limit price computed by the trailing strategy - `trailing_offset: Optional[str]` Trailing offset amount for trailing orders - `trailing_offset_type: Optional[TrailingOffsetType]` Trailing offset type for trailing orders - `"PRICE"` - `"BPS"` - `trailing_stop_px: Optional[str]` Current trailing stop price computed by the trailing strategy - `trailing_watermark_px: Optional[str]` Trailing watermark price for trailing orders - `trailing_watermark_ts: Optional[datetime]` Trailing watermark timestamp for trailing orders - `underlying_instrument_id: Optional[str]` OEMS instrument ID of the option's underlying instrument. Populated only for OPTIONS orders; `null` for non-options and for options whose underlier cannot be resolved from the instrument cache. ### Example ```python from clear_street import ClearStreet client = ClearStreet( api_key="My API Key", ) response = client.v1.orders.submit_orders( account_id=0, orders=[{ "legs": [{ "instrument_type": "OPTION", "ratio": "ratio", "security": "0193bb84-447a-706f-996f-097254663f02", "side": "BUY", }, { "instrument_type": "OPTION", "ratio": "ratio", "security": "0193bb84-4db4-78ec-b4fd-cba8be61cf8a", "side": "SELL", }, { "instrument_type": "OPTION", "ratio": "ratio", "security": "0193bb84-5264-7f20-8fd3-35df82cd6ef0", "side": "BUY", }], "order_type": "LIMIT", "time_in_force": "DAY", }], ) print(response) ``` #### Response ```json { "data": [ { "account_id": 19816, "average_fill_price": null, "client_order_id": "my-ref-id-20251003-001", "created_at": "2025-10-03T14:01:15.000000000Z", "filled_quantity": "0", "id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01", "instrument_id": "c3c4c5c6-d3d4-e3e4-f3f4-f5f6f7f8f9fa", "instrument_type": "COMMON_STOCK", "leaves_quantity": "25", "limit_price": null, "order_type": "MARKET", "quantity": "25", "side": "SELL", "status": "PENDING_NEW", "stop_price": null, "symbol": "GOOG", "time_in_force": "DAY", "updated_at": "2025-10-03T14:01:15.000000000Z", "venue": "XNAS" }, { "account_id": 19816, "average_fill_price": null, "client_order_id": "my-ref-id-20251003-002", "created_at": "2025-10-03T14:01:15.000000000Z", "filled_quantity": "0", "id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02", "instrument_id": "d4d5d6d7-e4e5-f4f5-a4a5-a6a7a8a9aaab", "instrument_type": "COMMON_STOCK", "leaves_quantity": "50", "limit_price": "180.00", "order_type": "LIMIT", "quantity": "50", "side": "BUY", "status": "PENDING_NEW", "stop_price": null, "symbol": "TSLA", "time_in_force": "DAY", "updated_at": "2025-10-03T14:01:15.000000000Z", "venue": "XNAS" } ], "error": null, "metadata": { "request_id": "ea0b1c2d-3e4f-5a6b-7c8d-9e0f1a2b3c4d" } } ```