action (object, required) — The order action object containing:
type (string) — Must be "order"orders (array) — Array of order objects with:
a (number) — Asset index (see asset notation below)b (boolean) — Is buy order (true for buy/long, false for sell/short)p (string) — Limit price (use “0” for market orders)s (string) — Size in units of the base assetr (boolean) — Reduce only ordert (object) — Order type specification:
{"limit": {"tif": "Alo" | "Ioc" | "Gtc"}}{"trigger": {"isMarket": boolean, "triggerPx": string, "tpsl": "tp" | "sl"}}c (string, optional) — Client order ID (128-bit hex string)grouping (string) — Order grouping: "na" | "normalTpsl" | "positionTpsl"builder (object, optional) — Builder fee configuration:
b (string) — Builder address to receive feesf (number) — Fee in tenths of a basis pointnonce (number, required) — Current timestamp in milliseconds (must be recent)
signature (object, required) — EIP-712 signature of the action
vaultAddress (string, optional) — Address when trading on behalf of a vault or subaccountexpiresAfter (number, optional) — Timestamp in milliseconds after which the order is rejecteduniverse field in the meta response. For spot assets, use 10000 + index where index is from spotMeta.universe.
Example: PURR/USDC spot has index 0 in spot metadata, so use asset 10000.
Alo — Add liquidity only (post-only), canceled if would immediately matchIoc — Immediate or cancel, unfilled portion canceledGtc — Good til canceled, rests on book until filled or canceledtp — Take profit ordersl — Stop loss orderisMarket — Whether to place market order when triggeredtriggerPx — Price at which to trigger the orderstatus — "ok" if successfulresponse — Contains order details:
type — "order"data.statuses — Array of status objects for each order:
resting — Order placed on book with oid (order ID)filled — Order immediately filled with totalSz, avgPx, and oiderror — Error message if order failedexpiresAfter field consumes 5x rate limit when orders expire due to staleness.Current timestamp in milliseconds
1734567890123
EIP-712 signature of the action. REQUIRED for authentication. Must be properly signed.
Address when trading on behalf of a vault or subaccount (optional)
"0x0000000000000000000000000000000000000000"
Timestamp in milliseconds after which the order is rejected (optional)