Documentation Index
Fetch the complete documentation index at: https://docs.o1.exchange/llms.txt
Use this file to discover all available pages before exploring further.
The router can dispatch legs to the venues below. The DexId value appears in routePlan.routes[].legs[].dex on every quote response, and you can pass any subset of these in the optional allowedDexes field on /quote and /execute to restrict routing.
Constant-product (V2-style)
Single-hop direct-pool swaps via the V2 product formula x × y = k.
DexId | Protocol | Notes |
|---|
UNIV2 | Uniswap V2 | Multi-hop fallback also uses this kind. |
AERODROME_V2LIKE | Aerodrome volatile pools | The V2-style side of Aerodrome (non-stable). |
PANCAKE_V2 | PancakeSwap V2 | |
Concentrated liquidity (V3-style)
Tick-aware pool math.
DexId | Protocol | Notes |
|---|
UNIV3 | Uniswap V3 | Direct-pool dispatch for single hop, path-encoded for multi-hop. |
PANCAKE_V3 | PancakeSwap V3 | |
PANCAKE_INFINITY_CL | PancakeSwap Infinity Concentrated Liquidity | |
ALIEN_BASE_V3 | AlienBase V3 | |
HYDREX | Hydrex | Algebra Integral family. |
QUICKSWAP_V4 | QuickSwap V4 | Algebra Integral family. |
Universal router (V4-style)
Uniswap V4 is dispatched through the universal-router commands ABI.
DexId | Protocol | Notes |
|---|
UNIV4 | Uniswap V4 | Carries an opaque commands byte string and inputs[] array. |
Stable and curve-style
DexId | Protocol | Notes |
|---|
AERODROME_CL | Aerodrome Concentrated Liquidity | Stable side of Aerodrome. |
CURVE | Curve TwoCrypto-NG (and compatibles) | Pool-indexed by i / j. |
Proprietary on-chain AMMs
These are direct integrations with project-specific AMMs on Base. All dispatch through a router contract per protocol.
DexId | Protocol |
|---|
PROPSWAP | PropSwap |
TESSERA | Tessera |
ELFOMOFI | Elfomofi |
LUNARBASE | LunarBase |
FELTIR | Feltir |
Other on-chain venues
DexId | Protocol | Notes |
|---|
DODO_V2 | DODO V2 | Carries pool and baseToken for direction. |
WOOFI | WooFi | Routed through the WooFi router contract. |
GYROSCOPE_ECLP | Gyroscope ECLP | Elliptic concentrated liquidity. |
MAVERICK_V2 | Maverick V2 | |
Restricting routing
If you want to limit which venues the optimizer considers (e.g. for a benchmarking experiment, or to avoid a specific protocol), pass allowedDexes on /quote or /execute:
{
"chainId": 8453,
"tokenIn": "0x...",
"tokenOut": "0x...",
"amountIn": "1000000000",
"slippageBps": 100,
"allowedDexes": ["UNIV3", "AERODROME_CL", "PANCAKE_V3"]
}
Restricting allowedDexes reduces routing flexibility. Expect worse expectedAmountOut than an unrestricted quote. Use only when you have a clear reason.
What’s NOT supported
Off-chain professional market makers (PMMs) used by some upstream aggregators are not in this list.
Bridges, cross-chain venues, and limit-order books are also out of scope; this aggregator is same-chain spot routing on Base.