Introduction
Prefer to watch a video instead? Jump to 0x Concept Videos.
What is Swap API?​
Swap API is a professional-grade DEX aggregation and smart order routing REST API that runs on HTTP. Using the API, developers can easily and reliably tap into aggregated multi-chain DEX liquidity.
Power crypto trading in your application with a single API integration that unlocks thousands of tokens. Swap API finds the best executed price across 70+ liquidity sources, both public (AMMs) and private (professional market makers), across a growing number of blockchains.
Why use Swap API?​
Swap API watches out for your users and is easy for developers.
- Easily access multi-chain liquidity on the most popular EVM-compatible networks
- By default, it has built-in user-protection features, including:
- Slippage Protection which protects users against MEV-attacks
- Price Impact Protection which protects users from getting rekt by illiquid markets
- Best execution with the lowest reverts
- Exclusive built-in RFQ liquidity which is competetive with AMMs and comes with the added benefit of zero slippage and guarnteed MEV protection
- It is easy-to-use! For example, you can easily find the best price to buy DAI with WETH with this request
Try it out
👉 Run this curl request to see a live quote response for selling WETH -> DAI, excluding Kyber as a source:
// Replace API key in the header with your own key from https://dashboard.0x.org/
curl --location --request GET 'https://api.0x.org/swap/v1/quote?buyToken=DAI&sellToken=ETH&sellAmount=100000&excludedSources=Kyber' --header '0x-api-key: 35aa607c-1e98-4404-ad87-4bed10a538ae'
You will receive a response that looks like this:
{
"chainId": 1,
"price": "1969.101",
"guaranteedPrice": "1949.40999",
"estimatedPriceImpact": "0",
"to": "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
"data": "0xd9627...
...
}
This is a valid unsigned Ethereum transaction that can be submitted directly to a node to complete the swap. Read more about the parameters here.
Note: This request uses a test API key that should not be used in production. Create an account and get your live API keys to access the Swap API from 0x Dashboard.
How does it work?​
Swap API is a professional-grade DEX aggregation and smart order routing API. Using the API, developers can easily and reliably tap into aggregated multi-chain DEX liquidity. Swap API finds the best executed price across 70+ liquidity sources, both public (AMMs) and private (professional market makers), across a growing number of blockchains
Below is a high-level diagram showing how Swap API works under the hood:
- Retail Trader Requests a quote
- Swap API simultaneously (a) retrieves quote from AMM and (b) requests quotes from Market Makers
- Market Makers responds with signed quote at their discretion
- Swap API aggregates the quotes it has received and compares the prices, taking into account slippage and price impact. It returns the best price to the Retail Trader.
- If the Retail Trader likes the quote, the Retail Trader signs the order. Swap API sends the signed order to the blockchain to be settled by the 0x Protocol.
For more details about how 0x orders are executed, check out How does 0x work?.
Under the hood, Swap API performs a series of tasks:
- Queries prices from multiple DEXs and market makers and aggregates the liquidity from the queried sources to provide the best price possible. Think of how Google flights aggregates flight prices for a certain time and date to help you find the best price,
/swap
similarly helps you find the best price across DeFi liquidity sources. - Swap API’s smart order routing algorithm splits up your transaction across different sources to maximize the overall return on your swap. Read more about smart order routing here.
- Swap API's Slippage Protection enables developers to surface more reliable quotes and consistently deliver the best executed price to users.
- Swap API's Price Impact Protection calculates price impact estimates, and allows developers to easily notify users if insufficient liquidity may negatively affect the price.
- The response returned by Swap API is a valid unsigned Ethereum transaction that can be submitted directly to an Ethereum node. Easily execute using the transaction using the web3 library of your choice.
Get Started​
To create an account, and get your live API keys to access the Swap API, visit the 0x Dashboard.
Now that you're familar with what Swap API offers, read How to Use Swap API to get started or choose one of the resources below.
Guides​
- How to Use Swap API
- How to Build a Token Swap DApp with Swap API
- Use 0x API Liquidity in Your Smart Contracts
- Fill a 0x API quote
- Working in the Testnet
API References​
Advanced Topics​
API FAQs