Search
⌘K
Classic Swap
API version: 6.1
Introduction
Quick start
Methods
Find the best quote to swap with 1inch Router GET
Generate calldata to swap on 1inch Router GET
Address of the 1inch Router that is trusted to spend funds for the swap GET
Generate approve calldata to allow 1inch Router to perform a swap GET
Get the number of tokens that the 1inch Router is allowed to swap GET
List of liquidity sources that are available for routing in the 1inch Aggregation Protocol GET
List of tokens that are available for swap in the 1inch Aggregation protocol GET
Migration
Migration from v5.0 to v5.2
Migration from v5.2 to v6.0
Migration from v6.0 to v6.1
Docs·APIs·Swap API·Classic Swap·Methods·6.1·Find the best quote to swap with 1inch Router

Find the best quote to swap with 1inch Router

GEThttps://api.1inch.com/swap/v6.1/{chain}/quote
Supported on:
ArbitrumAvalancheBaseBNB ChainZKsyncEthereumGnosisOptimismPolygonLineaSonicUnichain

Parameters

chain
* number path
src
* string query
dst
* string query
amount
* string query
protocols
string query
fee
number query
gasPrice
string query
complexityLevel
number query
parts
number query
mainRouteParts
number query
gasLimit
number query
includeTokensInfo
boolean query
includeProtocols
boolean query
includeGas
boolean query
connectorTokens
string query
excludedProtocols
string query

Request Body

This request doesn’t have any request body.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
const axios = require('axios');

async function httpCall() {
  const url = 'https://api.1inch.com/swap/v6.1/{chain}/quote';

  const config = {
    headers: {
      Authorization: `Bearer ${API_KEY}`,
    },
    params: {
      src: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
      dst: '0x111111111117dc0aa78b770fa6a738034120c302',
      amount: '10000000000000000',
    },
    paramsSerializer: {
      indexes: null,
    },
  };
  const body = {};

  try {
    const response = await axios.get(url, body, config);
    console.log(response.data);
  } catch (error) {
    console.error(error);
  }
}

Returns

200
400
QuoteResponse object
srcToken
any
allOf[0]
TokenInfo object
address
* string
symbol
* string
name
* string
decimals
* number
logoURI
* string
domainVersion
string
eip2612
boolean
isFoT
boolean
tags
array
items
string
dstToken
any
allOf[0]
TokenInfo object
address
* string
symbol
* string
name
* string
decimals
* number
logoURI
* string
domainVersion
string
eip2612
boolean
isFoT
boolean
tags
array
items
string
dstAmount
* string
protocols
array
items
TokenSwaps object
token
* string
hops
* array
items
TokenHop object
part
* number
dst
* string
fromTokenId
* number
toTokenId
* number
protocols
* array
items
SelectedLiquiditySource object
name
* string
part
* number
gas
number
JSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
{
  "srcToken": {
    "address": "0x111111111117dc0aa78b770fa6a738034120c302",
    "symbol": "1INCH",
    "name": "1INCH Token",
    "decimals": 18,
    "logoURI": "https://tokens.1inch.io/0x111111111117dc0aa78b770fa6a738034120c302.png",
    "domainVersion": "string",
    "eip2612": true,
    "isFoT": false,
    "tags": ["tokens"]
  },
  "dstToken": {
    "address": "0x111111111117dc0aa78b770fa6a738034120c302",
    "symbol": "1INCH",
    "name": "1INCH Token",
    "decimals": 18,
    "logoURI": "https://tokens.1inch.io/0x111111111117dc0aa78b770fa6a738034120c302.png",
    "domainVersion": "string",
    "eip2612": true,
    "isFoT": false,
    "tags": ["tokens"]
  },
  "dstAmount": "62131879850006790961",
  "protocols": [
    {
      "token": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
      "hops": [
        {
          "part": 100,
          "dst": "0x111111111117dc0aa78b770fa6a738034120c302",
          "fromTokenId": 0,
          "toTokenId": 1,
          "protocols": [
            {
              "name": "UNISWAP_V3",
              "part": 100
            }
          ]
        }
      ]
    }
  ],
  "gas": 100000
}

Did you find what you need?