Skip to main content
POST
/
api
/
routes
/
swapDepositTrade
curl --request POST \
  --url https://api.example.com/api/routes/swapDepositTrade \
  --header 'Content-Type: application/json' \
  --data '
{
  "dstTokenAddress": "0x0000000000000000000000000000000000000000",
  "dstTokenBlockchain": "POLYGON",
  "referrer": "rubic.exchange",
  "srcTokenAddress": "0x0000000000000000000000000000000000000000",
  "srcTokenAmount": "1.05",
  "srcTokenBlockchain": "ETH",
  "id": "string",
  "receiver": "0x1b3cB81E51011b549d78bf720b0d924ac763A7C2"
}
'
{
  "quote": {
    "srcTokenAddress": "<string>",
    "dstTokenBlockchain": "POLYGON",
    "srcTokenBlockchain": "ETH",
    "srcTokenAmount": "1.05",
    "dstTokenAddress": "0x0000000000000000000000000000000000000000",
    "id": "<string>",
    "fromAddress": "<string>",
    "receiver": "<string>",
    "referrer": "rubic.exchange",
    "nativeBlacklist": [],
    "enableChecks": true,
    "signature": "<string>",
    "publicKey": "<string>",
    "refundAddress": "<string>",
    "integratorAddress": "<string>",
    "slippage": 0.02,
    "preferredProvider": "symbiosis",
    "foreignBlacklist": {
      "dflow": [],
      "lifi": [],
      "rango": [],
      "zerox": []
    },
    "timeout": 32,
    "enableTestnets": false,
    "skipFeeProviders": false,
    "showFailedRoutes": false,
    "showDangerousRoutes": false,
    "depositTradeParams": "all"
  },
  "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"
      }
    }
  },
  "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": [
    {}
  ],
  "routing": [
    {
      "type": {},
      "provider": "<string>",
      "path": [
        {
          "address": "0x0000000000000000000000000000000000000000",
          "decimals": 18,
          "symbol": "ETH",
          "name": "Ethereum",
          "blockchainId": "1",
          "blockchain": "ETH",
          "amount": "0.00123",
          "price": "1.35"
        }
      ]
    }
  ],
  "providerType": {},
  "swapType": {},
  "useRubicContract": true,
  "uniqueInfo": {
    "changenowId": "<string>",
    "changellyId": "<string>",
    "simpleSwapId": "<string>",
    "retroBridgeId": "<string>",
    "squidrouterRequestId": "<string>",
    "rangoRequestId": "<string>",
    "retrobridgeId": "<string>",
    "relayId": "<string>",
    "exolixId": "<string>",
    "acrossId": "<string>",
    "nearIntentsId": "<string>"
  }
}

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
default:""
required

Wallet address to send tokens to on the destination blockchain

referrer
object
required

Referrer address

Example:

"rubic.exchange"

id
string
required

Id of the calculated trade

nativeBlacklist
string[]

Native provider-calculation to exclude from calculation

fromAddress
string

Wallet address to send funds from

integratorAddress
string

Integrator address to set fees

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 possible gas and wallet errors checks

skipFeeProviders
object

Skip providers with fee in route

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
signature
string

Signature to auth wallet

publicKey
string

Public key of bitcoin wallet address

refundAddress
string

Address for refunds in src chain in case of reverted deposit trades

Response

quote
object
required
estimate
object
required
fees
object
required
transaction
object
required
warnings
object[]
required

Specific info about quote params provide

routing
object[]
required
providerType
object
required
swapType
object
required
useRubicContract
boolean
required
uniqueInfo
object