> ## Documentation Index
> Fetch the complete documentation index at: https://docs.panofx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Limit orders

> Name a price, sign once, and let the relay fill it when a resolver meets it.

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.

<Note>
  Limit orders run on Base today. On Solana chains the relay answers `limit_orders_unsupported`.
</Note>

## Placing one

<Steps>
  <Step title="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.
  </Step>

  <Step title="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.
  </Step>

  <Step title="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.
  </Step>
</Steps>

## 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](/integrators/api/limit-orders-prepare).
