Skip to main content
A limit order is a TakerAuth without the offers. You sign a LimitAuth that says: “whichever offers deliver at least this much of this token to my address before this deadline, up to this gas fee.” The relay holds it and runs an auction for it every few seconds. When a resolver’s offer meets the price, the keeper fills it through executeLimit. Nothing moves until then.
Limit orders run on Base today. On Solana chains the relay answers limit_orders_unsupported.

Placing one

1

Choose a price and a lifetime

From 5 minutes to 30 days. The relay auctions an order only when its price is within 150 bps of the oracle mid, so an order far from the market waits rather than spamming resolvers.
2

Sign once

The wallet shows the Permit2 authorization: the sell amount, the minimum out after the fee at your price, and a gas cap of three times today’s gas fee. USDC sellers also sign an EIP-2612 permit; cNGN sellers need the one-time approval.
3

Go offline

The order is on the relay’s book. Its status is open, filling, filled, cancelled or expired. Each failed fill doubles the wait before the next auction.

Cancelling

Cancel from Intents with one more signature. That takes the order off the relay’s book. The Permit2 signature itself stays valid until its deadline; a wallet can end it early by invalidating its nonce on Permit2, and the order’s page shows the exact call.

Limits

At most 20 open orders per taker. The relay re-derives every term from the price when it books the order, so a client cannot bend the arithmetic. The API is under Limit orders.