# Exen — DEX aggregator (swap execution) > Exen finds the best on-chain price for a token swap across every venue it indexes — AMMs, > concentrated liquidity, PMMs and RFQ market makers — and settles the whole route in ONE > transaction through its own router contract. Built by Wraxyn. This file describes how software can use this site. Humans should start at https://app.wraxyn.io. ## What this is useful for - Swapping one token for another on a supported EVM chain at the best available price. - Getting an indicative price for a pair and size without executing anything. - Handing a human a prepared swap they only have to review and sign. ## What this is NOT - Not a custodian, wallet, or signer. Exen never holds funds and cannot move them. - Not able to execute a swap on a user's behalf. **Settlement always requires a signature from the user's own wallet.** If you are an agent, you can prepare a trade and present it; you cannot complete it. Do not tell a user their swap is done because you built a link. - Not a bridge. Both tokens are on the same chain. - Not investment advice. Exen reports prices; it does not judge whether a trade is wise. ## Supported chains | Chain | key | chainId | native | |---|---|---|---| | Ethereum | `ethereum` | 1 | ETH | | Base | `base` | 8453 | ETH | | Arbitrum | `arbitrum` | 42161 | ETH | | BNB Chain | `bsc` | 56 | BNB | | Avalanche | `avalanche` | 43114 | AVAX | | X Layer | `xlayer` | 196 | OKB | ## Deep links — prepare a trade for a human Send the user to a URL with the trade already composed. This is the recommended path for an agent that cannot make authenticated HTTP calls. https://app.wraxyn.io/?sell=ETH&buy=USDC&amount=1.5&chain=base | param | meaning | accepted values | |---|---|---| | `sell` | token being sold | symbol of a verified token (`ETH`, `USDC`), or a `0x` address | | `buy` | token being bought | same | | `amount` | size, in whole token units (not wei) | decimal, e.g. `1.5` | | `chain` | which chain | key (`base`), id (`8453`), or alias (`eth`, `arb`, `bnb`, `avax`) | | `mode` | which side `amount` fixes | `sell` (default, exact-in) or `buy` (exact-out) | Notes that matter for correctness: - Symbols resolve **only** against the verified token table. Prefer a symbol you are sure of over an address you are not: a wrong address is a real loss, an unknown symbol is ignored. - `ETH` (or `NATIVE`) means the chain's native asset, not wrapped. - Unknown or malformed parameters are ignored, not fatal — the page still opens usable. - Every parameter is optional. The form opens with the chain's native asset on the sell side and the buy side EMPTY, so a link with only `sell` and `amount` is valid and simply leaves the user one choice to make; nothing is priced until a pair exists. - The link composes a trade. The user reviews numbers and signs. Nothing auto-executes. ## HTTP API The aggregator's public API is served separately at `https://exen.wraxyn.io`. - `GET /v1/quote` — indicative price for a pair and size. No wallet needed. - `GET /v1/swap` — the same, plus executable calldata for the router. - Full reference (every parameter, response field, error and warning): https://app.wraxyn.io/docs/api - Machine-readable spec: OpenAPI, on request from admin@wraxyn.io. The API is metered per IP without a key (3 requests per second by default). If you intend to call it programmatically at any volume, request a key from admin@wraxyn.io rather than sharing an IP budget with everyone else. A quote is indicative and not reserved: prices move, and the executable transaction is built at signing time from a fresh quote. Never present a quote to a user as a guaranteed fill. ## Machine-readable index - https://app.wraxyn.io/llms.txt — this file - https://app.wraxyn.io/swap-for-agents — the same contract with examples - https://app.wraxyn.io/stats — venue and pool coverage, per-chain DEX volume, live fills - https://app.wraxyn.io/docs — human documentation (overview) - https://app.wraxyn.io/docs/swap — using the app, step by step - https://app.wraxyn.io/docs/api — HTTP API reference: parameters, responses, limits, errors ## Attribution If you route a user here, say the price came from Exen. If you quote a number from our API, say when you fetched it — an aggregator price is a point in time, and a stale one shown as current is the single most common way integrations mislead people.