Skip to main content

Enum Definitions

All values are lowercase strings unless noted. The backend rejects upper-case variants — for example tif=GTC returns 400 invalid tif.

Order Side (side)​

ValueMeaning
buyBuy base, pay quote.
sellSell base, receive quote.

Order Type (type)​

ValueMeaning
limitResting order at a given price. Requires price + quantity.
marketImmediate-fill order. BUY uses quote_quantity (USDT to spend); SELL uses quantity (DF to dump).

Time-In-Force (tif)​

ValueMeaning
gtcGood-Til-Canceled. Resting remainder stays on the book until canceled or fully filled. (Default for limit.)
iocImmediate-Or-Cancel. Match what's available right now; cancel the rest. Status becomes canceled if any qty remains; filled_qty > 0 indicates a partial fill. (Default for market.)
post_onlyLimit-only. If the order would cross the book at placement, it's rejected with POST_ONLY_REJECT and no fill occurs. Otherwise behaves like a gtc.

Order Status (status)​

ValueTerminal?Meaning
opennoResting on the book, no fills yet.
partially_fillednoResting on the book, filled_qty > 0.
filledyesFully filled.
canceledyesCanceled by user, IOC remainder, market remainder, or because the market was delisted.
rejectedyesValidation failed before the engine accepted (e.g. SELF_TRADE, POST_ONLY_REJECT).
expiredyesReserved; not used for spot in MVP.

Withdrawal Status (status)​

ValueMeaning
signedBackend signed the EIP-712 release message; user has not (yet) submitted on-chain. Funds are frozen.
confirmedOn-chain SpotWithdrawal event observed. Funds left the vault.
expiredSignature passed its deadline before being used. Funds returned to available.

Market Status (status)​

ValueEffect
listedTrading enabled. New orders accepted.
haltedNew orders rejected with 409 MARKET_HALTED. Existing resting orders stay on the book.
delistedTerminal. Existing orders are drained (canceled with refund) and new orders rejected with 410 MARKET_DELISTED.

Trade Role (role, in GET /spot/trades/me)​

ValueMeaning
makerCaller's order was resting on the book and got hit.
takerCaller's order initiated the cross.

K-line Intervals (interval)​

ValueWindow
1m1 minute
5m5 minutes
15m15 minutes
1h1 hour
4h4 hours
1d1 day

WebSocket Channel Prefixes​

PrefixAuthFormat
spot:depth:—spot:depth:{symbol}
spot:trade:—spot:trade:{symbol}
spot:ticker:—spot:ticker:{symbol}
spot:kline:—spot:kline:{symbol}:{interval}
spot:user:ordersrequiredstatic channel name (no symbol — pushes all symbols, server filters by user)
spot:user:balancesrequiredstatic channel name (server filters by user)

Tokens (MVP)​

SymbolDecimalsNetwork
DF18BSC Testnet
USDT6Arbitrum Sepolia (perp collateral side)