Skip to main content
POST
/
api
/
routes
/
quoteBest
curl --request POST \
  --url https://api.example.com/api/routes/quoteBest \
  --header 'Content-Type: application/json' \
  --data '
{
  "dstTokenAddress": "0x0000000000000000000000000000000000000000",
  "dstTokenBlockchain": "POLYGON",
  "referrer": "rubic.exchange",
  "srcTokenAddress": "0x0000000000000000000000000000000000000000",
  "srcTokenAmount": "1.05",
  "srcTokenBlockchain": "ETH"
}
'
{
  "id": "<string>",
  "tokens": {
    "from": {
      "address": "0x0000000000000000000000000000000000000000",
      "decimals": 18,
      "symbol": "ETH",
      "name": "Ethereum",
      "blockchainId": "1",
      "blockchain": "ETH",
      "amount": "0.00123",
      "price": "1.35"
    },
    "to": {
      "address": "0x0000000000000000000000000000000000000000",
      "decimals": 18,
      "symbol": "ETH",
      "name": "Ethereum",
      "blockchainId": "1",
      "blockchain": "ETH",
      "price": "1.35"
    }
  },
  "swapType": {},
  "providerType": {},
  "estimate": {
    "destinationTokenAmount": "1.05",
    "destinationTokenMinAmount": "1.02",
    "destinationWeiAmount": "105000000000000000",
    "destinationWeiMinAmount": "102000000000000000",
    "durationInMinutes": "5",
    "slippage": "5",
    "priceImpact": "3",
    "destinationUsdAmount": "25.31",
    "destinationUsdMinAmount": "25.31"
  },
  "fees": {
    "gasTokenFees": {
      "gas": {
        "gasPrice": "1000000000000000000",
        "baseFee": "1000000000000000000",
        "maxFeePerGas": "1000000000000000000",
        "maxPriorityFeePerGas": "1000000000000000000",
        "gasLimit": "1000000000000000",
        "totalWeiAmount": "5020000000000000",
        "totalUsdAmount": "15.31"
      },
      "protocol": {
        "fixedAmount": "0.00013",
        "fixedWeiAmount": "130000000000000",
        "fixedUsdAmount": "1.53"
      },
      "provider": {
        "fixedAmount": "0.00013",
        "fixedWeiAmount": "130000000000000",
        "fixedUsdAmount": "1.53"
      },
      "nativeToken": {
        "address": "0x0000000000000000000000000000000000000000",
        "decimals": 18,
        "symbol": "ETH",
        "name": "Ethereum",
        "blockchainId": "1",
        "blockchain": "ETH",
        "price": "1.35"
      }
    },
    "percentFees": {
      "percent": 123,
      "token": {
        "address": "0x0000000000000000000000000000000000000000",
        "decimals": 18,
        "symbol": "ETH",
        "name": "Ethereum",
        "blockchainId": "1",
        "blockchain": "ETH",
        "price": "1.35"
      }
    }
  },
  "routing": [
    {
      "type": {},
      "provider": "<string>",
      "path": [
        {
          "address": "0x0000000000000000000000000000000000000000",
          "decimals": 18,
          "symbol": "ETH",
          "name": "Ethereum",
          "blockchainId": "1",
          "blockchain": "ETH",
          "amount": "0.00123",
          "price": "1.35"
        }
      ]
    }
  ],
  "transaction": {
    "approvalAddress": "<string>",
    "permit2Address": "<string>",
    "data": "<string>",
    "to": "<string>",
    "value": "<string>",
    "depositAddress": "<string>",
    "amountToSend": "<string>",
    "extraFields": {},
    "exchangeId": "<string>",
    "tonMessages": [
      {
        "address": "<string>",
        "amount": "<string>",
        "payload": "<string>",
        "stateInit": "<string>"
      }
    ],
    "psbt": "<string>",
    "signInputs": [
      123
    ],
    "feeLimit": 123,
    "callValue": "<string>",
    "signature": "<string>",
    "arguments": [
      "<string>"
    ],
    "rawParameter": "<string>",
    "transaction": "<string>"
  },
  "warnings": [
    {}
  ],
  "useRubicContract": true
}

Body

application/json

Description for the Post Body

srcTokenAddress
string
required

Destination token blockchain

dstTokenBlockchain
enum<string>
default:POLYGON
required

Destination token blockchain

Available options:
MUMBAI,
BSCT,
GOERLI,
FUJI,
SCROLL_SEPOLIA,
ARTHERA,
SEPOLIA,
BERACHAIN_TESTNET,
BLAST_TESTNET,
HOLESKY,
UNICHAIN_SEPOLIA_TESTNET,
ETH,
BSC,
POLYGON,
POLYGON_ZKEVM,
AVALANCHE,
MOONRIVER,
FANTOM,
HARMONY,
ARBITRUM,
AURORA,
TELOS,
OPTIMISM,
CRONOS,
OKX,
GNOSIS,
FUSE,
MOONBEAM,
CELO,
BOBA,
BOBA_BSC,
ASTAR_EVM,
KAVA,
BITGERT,
OASIS,
METIS,
DEFIKINGDOMS,
KLAYTN,
VELAS,
STARKNET,
SYSCOIN,
ETHEREUM_CLASSIC,
FLARE,
IOTEX,
THETA,
ZK_SYNC,
PULSECHAIN,
LINEA,
BASE,
MANTLE,
MANTA_PACIFIC,
SCROLL,
ZETACHAIN,
BLAST,
HORIZEN_EON,
MERLIN,
ROOTSTOCK,
MODE,
ZK_FAIR,
ZK_LINK,
XLAYER,
TAIKO,
SEI,
CORE,
BAHAMUT,
BITLAYER,
GRAVITY,
FRAXTAL,
BERACHAIN,
SONEIUM,
WANCHAIN,
UNICHAIN,
MORPH,
HEMI,
PLASMA,
MONAD,
BITCOIN_CASH,
NEAR,
ICP,
CARDANO,
AION,
ALGORAND,
APTOS,
ARDOR,
ARK,
ASTAR,
COSMOS,
BAND_PROTOCOL,
BITCOIN_DIAMOND,
BSV,
BITCOIN_GOLD,
CASPER,
DASH,
DECRED,
DIGI_BYTE,
DIVI,
DOGECOIN,
POLKADOT,
MULTIVERS_X,
FIO_PROTOCOL,
FIRO,
FLOW,
HEDERA,
HELIUM,
ICON,
IOST,
IOTA,
KADENA,
KOMODO,
KUSAMA,
LISK,
LITECOIN,
TERRA,
TERRA_CLASSIC,
MINA_PROTOCOL,
NANO,
NEO,
OSMOSIS,
PIVX,
POLYX,
QTUM,
THOR_CHAIN,
RAVENCOIN,
SIA,
SECRET,
STEEM,
STRATIS,
STACKS,
SOLAR,
VE_CHAIN,
WAVES,
WAX,
DX_CHAIN,
E_CASH,
NEM,
STELLAR,
MONERO,
RIPPLE,
TEZOS,
VERGE,
SYMBOL,
ZCASH,
HORIZEN,
ZILLIQA,
KAVA_COSMOS,
FILECOIN,
EOS,
ONTOLOGY,
XDC,
TON,
SOLANA,
BITCOIN,
TRON,
SUI
srcTokenBlockchain
enum<string>
default:ETH
required

Source token blockchain

Available options:
MUMBAI,
BSCT,
GOERLI,
FUJI,
SCROLL_SEPOLIA,
ARTHERA,
SEPOLIA,
BERACHAIN_TESTNET,
BLAST_TESTNET,
HOLESKY,
UNICHAIN_SEPOLIA_TESTNET,
ETH,
BSC,
POLYGON,
POLYGON_ZKEVM,
AVALANCHE,
MOONRIVER,
FANTOM,
HARMONY,
ARBITRUM,
AURORA,
TELOS,
OPTIMISM,
CRONOS,
OKX,
GNOSIS,
FUSE,
MOONBEAM,
CELO,
BOBA,
BOBA_BSC,
ASTAR_EVM,
KAVA,
BITGERT,
OASIS,
METIS,
DEFIKINGDOMS,
KLAYTN,
VELAS,
STARKNET,
SYSCOIN,
ETHEREUM_CLASSIC,
FLARE,
IOTEX,
THETA,
ZK_SYNC,
PULSECHAIN,
LINEA,
BASE,
MANTLE,
MANTA_PACIFIC,
SCROLL,
ZETACHAIN,
BLAST,
HORIZEN_EON,
MERLIN,
ROOTSTOCK,
MODE,
ZK_FAIR,
ZK_LINK,
XLAYER,
TAIKO,
SEI,
CORE,
BAHAMUT,
BITLAYER,
GRAVITY,
FRAXTAL,
BERACHAIN,
SONEIUM,
WANCHAIN,
UNICHAIN,
MORPH,
HEMI,
PLASMA,
MONAD,
BITCOIN_CASH,
NEAR,
ICP,
CARDANO,
AION,
ALGORAND,
APTOS,
ARDOR,
ARK,
ASTAR,
COSMOS,
BAND_PROTOCOL,
BITCOIN_DIAMOND,
BSV,
BITCOIN_GOLD,
CASPER,
DASH,
DECRED,
DIGI_BYTE,
DIVI,
DOGECOIN,
POLKADOT,
MULTIVERS_X,
FIO_PROTOCOL,
FIRO,
FLOW,
HEDERA,
HELIUM,
ICON,
IOST,
IOTA,
KADENA,
KOMODO,
KUSAMA,
LISK,
LITECOIN,
TERRA,
TERRA_CLASSIC,
MINA_PROTOCOL,
NANO,
NEO,
OSMOSIS,
PIVX,
POLYX,
QTUM,
THOR_CHAIN,
RAVENCOIN,
SIA,
SECRET,
STEEM,
STRATIS,
STACKS,
SOLAR,
VE_CHAIN,
WAVES,
WAX,
DX_CHAIN,
E_CASH,
NEM,
STELLAR,
MONERO,
RIPPLE,
TEZOS,
VERGE,
SYMBOL,
ZCASH,
HORIZEN,
ZILLIQA,
KAVA_COSMOS,
FILECOIN,
EOS,
ONTOLOGY,
XDC,
TON,
SOLANA,
BITCOIN,
TRON,
SUI
srcTokenAmount
string
required

Source token amount with decimals

Example:

"1.05"

dstTokenAddress
string
required

Destination token address

Example:

"0x0000000000000000000000000000000000000000"

receiver
string
required

Wallet address to send tokens to on the destination blockchain

referrer
object
required

Referrer address

Example:

"rubic.exchange"

nativeBlacklist
string[]

Native provider-calculation to exclude from calculation

showFailedRoutes
boolean
default:false

Show failed routes in response or not

Example:

false

showDangerousRoutes
boolean
default:false

Show dangerous routes in response or not

Example:

false

depositTradeParams
enum<string>
default:all
Available options:
onlyDeposits,
noDeposits,
all
integratorAddress
string

Integrator address to set fees

fromAddress
string

Wallet address to send funds from

slippage
number

Slippage tolerance in percents for trade

Required range: x <= 0.5
Example:

0.02

preferredProvider
enum<string>

Preferred provider for calculation

Available options:
symbiosis,
lifi,
dln,
bridgers,
multichain,
xy,
celer_bridge,
changenow,
stargate_v2,
arbitrum,
squidrouter,
scroll_bridge,
taiko_bridge,
rango,
pulsechain_bridge,
orbiter_bridge,
orbiter_bridge_v2,
owl_to_bridge,
layerzero,
archon_bridge,
meson,
eddy_bridge,
router,
retro_bridge,
across,
unizen,
simple_swap,
changelly,
tele_swap,
wanchain_bridge,
relay,
xflows,
wormhole,
exolix,
near_intents,
10K_SWAP,
AERODROME,
ACRYPTOS,
ALDRIN_EXCHANGE,
ALGEBRA,
ALGEBRA_INTEGRAL,
ANNEX,
APE_SWAP,
ARTH_SWAP,
ASTRO_SWAP,
ASCENT,
AURORA_SWAP,
AVNU,
AETHON_SWAP,
ATLANTIS,
BABY_SWAP,
BALANCER,
BASE_SWAP,
BEAM_SWAP,
BI_SWAP,
BRIDGERS,
BLAZE_SWAP,
BULBA_SWAP,
CAMELOT,
CETUS,
CHERRY_SWAP,
CLAIM_SWAP,
COFFEE_SWAP,
CREMA_FINANCE,
CRO_SWAP,
CRONA_SWAP,
CROPPER_FINANCE,
CROW_FI,
CRO_DEX,
CURVE,
DEDUST,
DEFI_PLAZA,
DEFI_SWAP,
DFLOW,
DFYN,
DLN,
DODO,
DRAGON_SWAP,
DYSTOPIA,
ECHO_DEX,
EDDY_FINANCE,
ELK,
ENOSYS,
ENOSYS_V3,
FENIX_V2,
FENIX_V3,
FINKUJIRA,
FUSIONX,
FRAX_SWAP_V2,
HONEY_SWAP,
HORIZONDEX,
JET_SWAP,
JOE,
JUPITER,
JUPITER_SWAP,
J_SWAP,
KIM,
KODIAK,
KUJATA,
KYBER_SWAP,
KYO_FINANCE,
LUA_SWAP,
LIFI,
MACARON,
MAVERICK,
MDEX,
MERLIN_SWAP,
MESH_SWAP,
MM_FINANCE,
MOJITO_SWAP,
MUTE_SWAP,
NET_SWAP,
NATIVE_ROUTER,
ODOS,
OKC_SWAP,
OKU_SWAP,
ONE_INCH,
ONE_MOON,
ONE_SOL,
OMNIDEX,
OOLONG_SWAP,
OPEN_OCEAN,
ORCA_SWAP,
OSMOSIS_SWAP,
OCTO_SWAP,
PANCAKE_SWAP,
PANCAKE_SWAP_V3,
PANGOLIN,
PARA_SWAP,
PEGASYS,
PHOTON_SWAP,
POLYDEX,
PITEAS,
QUICK_SWAP,
QUICK_SWAP_V3,
PULSEX_V1,
PULSEX_V2,
RANGO,
RAYDIUM,
REF_FINANCE,
REN_BTC,
ROUTER_SWAP,
SABER_STABLE_SWAP,
SAROS_SWAP,
SERUM,
SHIBA_SWAP,
SILK_SWAP,
SMOOTHY,
SOLANA,
SOLAR_BEAM,
SPACEFI_SWAP,
SPIRIT_SWAP,
SPL_TOKEN_SWAP,
SPOOKY_SWAP,
SOUL_SWAP,
STELLA_SWAP,
STONFI,
SUN_SWAP,
SURFDEX,
SUSHI_SWAP,
SYNAPSE,
SYNC_SWAP,
SPARK_DEX,
SPARK_DEX_V3,
SQUIDROUTER,
SYMBIOSIS_SWAP,
TONCO_DEX,
TRADER,
TRISOLARIS,
IZUMI,
UBE_SWAP,
UNISWAP_V2,
UNI_SWAP_V3,
UNIZEN,
VERSE,
VIPER_SWAP,
VOLTAGE_SWAP,
VOOI,
VVS_FINANCE,
WAGYU_SWAP,
WANNA_SWAP,
WAULT_SWAP,
WOO_FI,
WRAPPED,
WYND,
YUZU_SWAP,
XY_DEX,
ZAPPY,
ZIP_SWAP,
ZRX,
ZETA_SWAP
foreignBlacklist
object

Foreign provider-calculation to exclude from calculation

timeout
number
default:30

Calculation timeout in seconds

Required range: 2 <= x <= 60
Example:

32

enableTestnets
boolean

Use testnets for calculation or not

Example:

false

enableChecks
object

Enable allowance enough check

skipFeeProviders
object

Skip providers with fee in route

Response

200 - application/json
id
string
required

Trade identifier

tokens
object
required

Quote response data

swapType
object
required

Swap type

providerType
object
required

Provider type

estimate
object
required

Estimates

fees
object
required

Fees

routing
object[]
required

Routing data

transaction
object
required

Transaction data

warnings
object[]
required

Specific info about quote params provider

useRubicContract
boolean
required