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

# Introduction

> Voxel finds the best route for a Solana token swap across every liquidity venue and hands you a transaction to sign.

![Voxel: every pool, one best route](https://mintcdn.com/voxel/2r8S6b6C1rh-EheT/images/og/voxel-banner.png?fit=max\&auto=format\&n=2r8S6b6C1rh-EheT\&q=85\&s=61119678e69a21e1d38b80310d7036cf)

Voxel is a Solana swap aggregator. It listens to every DEX program on mainnet, keeps each pool's state in memory and prices a swap with the same math the pool's program runs. A quote is computed in milliseconds from live state, not fetched from a third party, and a swap is returned as an unsigned transaction that your wallet signs.

The same engine runs the [Voxel app](https://voxel.ag) and the public API at `https://swap-api.sodae.io`.

> **[Quickstart](https://docs.voxel.ag/quickstart.md)**
>
> Your first quote and swap in two requests.

> **[How routing works](https://docs.voxel.ag/routing.md)**
>
> Live state, native pricing and split routes in one transaction.

> **[Quote](https://docs.voxel.ag/api/quote.md)**
>
> Price a swap and see the route it would take.

> **[Swap](https://docs.voxel.ag/api/swap.md)**
>
> Get an unsigned transaction for the quoted route.

> **[Streams](https://docs.voxel.ag/api/quote-stream.md)**
>
> Live quotes, pool ticks and USD prices over WebSocket.

> **[Venues](https://docs.voxel.ag/venues.md)**
>
> More than 100 DEX programs, priced natively.

> **[TypeScript guide](https://docs.voxel.ag/guides/typescript.md)**
>
> Quote, swap, sign and send from a browser or Node.

> **[Errors](https://docs.voxel.ag/errors.md)**
>
> Every error code, what it means and what to do.

## What you get

| Endpoint | Use it for |
| - | - |
| [`GET /v1/quote`](https://docs.voxel.ag/api/quote) | Best output for an input amount, with the full route and any splits |
| [`POST /v1/swap`](https://docs.voxel.ag/api/swap) | The same route as an unsigned transaction for a wallet |
| [`/v1/quote-stream`](https://docs.voxel.ag/api/quote-stream) | One pair re-quoted continuously over WebSocket |
| [`/v1/stream`](https://docs.voxel.ag/api/market-stream) | Per-pool price ticks and per-token USD prices over WebSocket |
| [`GET /v1/price`](https://docs.voxel.ag/api/prices) | USD prices derived from live routing |
| [`GET /v1/token`, `/v1/tokens`](https://docs.voxel.ag/api/tokens) | Token metadata, icons and search |
| [`GET /v1/pools/{mint}`](https://docs.voxel.ag/api/pools) | Every pool a token trades on, with reserves and last price |

## Design

* **Everything streams.** Pool state comes from the live account and transaction firehose. Nothing is polled or cached from another aggregator, so a new pool is routable from its first trade.
* **Native pricing.** Each venue is quoted with its own curve, fee schedule and order book, in integer arithmetic. There is no simulation on the quote or swap path.
* **One transaction.** Split routes across several pools and hops compile into a single transaction that fits mainnet limits.
* **No custody.** The API never holds keys. It returns an unsigned transaction and your wallet signs it.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.