Documentation

Exen is a DEX aggregator. It prices a swap against every venue it indexes on a chain — AMMs, concentrated liquidity, proprietary market makers and RFQ desks — splits the trade across whichever combination pays best, and settles the whole route in one transaction through its own router contract. It is built by Wraxyn.

Two ways to use it

They are the same engine and the same prices. Pick by who is doing the swapping.

The app
Use it if
A person is doing the swap and will sign it in their own wallet.
The HTTP API
Use it if
Software is pricing or building the swap — a wallet, a bot, another aggregator, a solver.
Start at
HTTP API

The app is a client of the API and gets no private endpoint, no reserved liquidity and no better price than you would get calling it yourself.

Supported chains

Ethereum
Chain ID
1
Native
ETH
Key
ethereum
Base
Chain ID
8453
Native
ETH
Key
base
Arbitrum
Chain ID
42161
Native
ETH
Key
arbitrum
BNB Chain
Chain ID
56
Native
BNB
Key
bsc
Avalanche
Chain ID
43114
Native
AVAX
Key
avalanche
X Layer
Chain ID
196
Native
OKB
Key
xlayer
Polygon
Chain ID
137
Native
POL
Key
polygon
Robinhood
Chain ID
4663
Native
ETH
Key
robinhood

Both tokens are always on the same chain — Exen routes, it does not bridge. Live pool and venue coverage per chain is on the stats page, and GET /v1/{chain}/sources returns the machine-readable list.

Four things worth knowing before either path

  • A quote is not a reservation. Nothing is held. Quotes are stateless: the transaction you eventually sign is built from a fresh solve at that moment, which is why the number in the review step can differ from the one you were reading.
  • The floor is what is enforced, not the quote. A sell carries a minimum-received amount derived from your slippage tolerance; the transaction reverts below it. An exact-output buy delivers the target amount to the wei or reverts. Everything between the quote and the floor is ordinary market movement.
  • Exen never holds your funds. The router moves tokens within a single transaction that you sign; it has no custody, no balance of yours between transactions, and nothing here can move funds without a signature from your own wallet.
  • Amounts are integers, in base units. Every amount on the wire is a decimal string of wei — 1500000 is 1.5 USDC. Token decimals vary by chain and are not guessable (BSC stables are 18 decimals, not 6).

Reference material

API base URL
https://exen.wraxyn.io
OpenAPI specification
/openapi.yaml · /openapi.json — the published contract, for client generators and API tools.
The whole API as one file
/api.md — every endpoint, parameter, response field, error and warning as flat Markdown. Built for an LLM or an agent: one fetch, no navigation.
API access
https://exen.wraxyn.io is open with no key at 3 req/s. Need a rate budget of your own? Add an API key — same URL; ask admin@wraxyn.io.
Agent / LLM contract
/llms.txt and /swap-for-agents — deep links that compose a trade for a human to sign.
Coverage and live activity
Terms and privacy

Fees

Swaps in the app carry a fee on the token you receive. It is already included in every figure you are shown — the quote, the minimum received, and the amount you sign — so the number in the app is the number you get, not a number to subtract from.

Wrapping or unwrapping the native coin
Fee
None
What counts
ETH↔WETH, BNB↔WBNB and the equivalent on every chain. No fee at all — the swap is 1:1 by contract.
Between major assets
Fee
5 bps (0.05%)
What counts
Fiat stablecoins, Ether, and the chain’s own gas coin in either form — on both sides of the trade.
Everything else
Fee
10 bps (0.10%)
What counts
Any trade with at least one endpoint outside the list above.

Calling the API without a key is priced separately: 10 bps (0.10%) on the buy token, stated in the fee block of every response. That is a property of being anonymous rather than of any particular trade — a key of your own carries whatever we agree with you. See Add an API key.

[ subject to change ]

These rates are a starting point and we expect to revise them. They are not a commitment, and a trade is always priced at the rate in force when you request the quote — which is the rate shown to you at that moment.

If a rate does not work for what you are building — high volume, a fee split, an integration where the economics need to look different — we would rather hear about it than lose the use case. Write to admin@wraxyn.io and tell us what you are doing.

Getting in touch

[ contact ]

API keys, higher rate limits, integration help, listing a venue, or anything these pages do not answer: admin@wraxyn.io. Tell us what you are building and the chains you care about — that is enough to issue a key.