limitAmount at build, and submit with type: "LIMIT". Every example targets https://api.velora.xyz.
For the conceptual model (maker, expiry, how a limit order differs from a swap or OTC), see Product stack → Limit orders. For a typed wrapper, see SDK → Limit orders.
The flow
Quote a reference price
GET /v2/quote?mode=DELTA gives the current route and the spender to approve. The market quote is your reference point for setting the limit. See GET /v2/quote.Approve the spender
Approve the Delta contract
spender on-chain for the source token. Limit orders use approval, not a permit; see Approvals and permit. Native source skips this; see Native ETH (dETH).Build with a limit price
POST /v2/delta/orders/build with the route verbatim, owner, a deadline, and limitAmount (your target output for SELL, or max input for BUY). See POST /v2/delta/orders/build.Sign and submit as LIMIT
The user signs
toSign; POST /v2/delta/orders with type: "LIMIT". See POST /v2/delta/orders.1. Quote and approve
Quote exactly as for a Delta swap (mode=DELTA), then approve the returned spender for the source token. Use the quote’s expected output as the baseline for the limit price you’ll pin in the next step. Approve on-chain rather than with a permit, which a resting order can’t rely on (see Approvals and permit). Selling native ETH skips the approval; see Native ETH (dETH).
2. Build with a limit price
Pass thedelta.route verbatim and add limitAmount. For a SELL order it’s the minimum destination amount you’ll accept (your limit price). Every Delta order requires a deadline (unix seconds); past it the order is unfillable.
limitAmount above the quoted output is what makes this a limit order rather than a market fill: the solver network only fills once it can deliver at least that much. The response is the same { toSign, orderHash } as a market order.
3. Submit as LIMIT
The user signstoSign (ERC-2098 compact signature). Submit with type: "LIMIT". That field is what marks the order as a resting limit order instead of an immediate fill:
4. List and cancel
List a user’s open limit orders by filtering ontype:
GET /v2/delta/orders/{orderId}, or open it in the Velora explorer at https://explorer.velora.xyz/order/{orderId} for a human-readable status view. That’s useful for a resting limit order that may sit ACTIVE for a while.
Cancelling is gasless. Build the cancellation payload, have the user sign the returned toSign object, then post the same order IDs with the signature. It only succeeds while the order is still open or executing.
GET /v2/delta/orders, POST /v2/delta/orders/build/cancellation, and POST /v2/delta/orders/cancel.
Partner fee
Passpartner on the quote, build, and submit calls (plus optional partnerAddress, partnerFeeBps, partnerTakesSurplus), exactly as for a Delta swap. See Monetize.
Related pages
- Delta swap: the base flow a limit order extends.
- TWAP, the other scheduled Delta order type.
- Native ETH (dETH): selling native ETH as a Delta source.
- Product stack → Limit orders for the conceptual model.
- Delta API reference lists full parameters and response schemas.
- SDK → Limit orders, a typed wrapper over this flow.