Ranked Solana routes, without building anything

Two request shapes, both accepted. Short (agents): tokenIn/tokenOut as symbol or mint plus a human "amount". Explicit (when you already hold mints and decimals): add tokenInDecimals, tokenOutDecimals and a raw "amountIn", which skips token resolution entirely. Ranked by output after our fee. orca and meteora price by reading pool state on-chain rather than asking an API, which is why they win on pairs where aggregators route around thin liquidity.

post/svm/quote

Request

  • Base URL: https://swap.vurto.cc/v1
  • URL: https://swap.vurto.cc/v1/svm/quote
  • Auth: none required

Request body

chainId'solana-mainnet' required

Solana names its network, it does not number it.

tokenInstring required

Mint address, or the symbol of a VERIFIED token. Symbols resolve only against the verified list on purpose: on Solana anyone can mint a token carrying another one's symbol, name and icon, and the mint is the only real identity. CASE-SENSITIVE.

tokenOutstring required

Mint address, or the symbol of a VERIFIED token. Symbols resolve only against the verified list on purpose: on Solana anyone can mint a token carrying another one's symbol, name and icon, and the mint is the only real identity. CASE-SENSITIVE.

amountstring

Human decimal, e.g. "50". Use this OR amountIn.

amountInstring

Raw integer string in tokenIn smallest unit.

tokenInDecimalsinteger

Optional. Resolved server-side when omitted.

tokenOutDecimalsinteger

Optional. Resolved server-side when omitted.

slippageBpsinteger

Optional, a sane default applies.

receiverstring

Optional: deliver the output to this address instead of the signing wallet.

Response

{quotes[], failures[], refreshedAt, providersQueried, indicative}. gainUserUsd is the proven advantage over the runner-up that stays with the user, null when there was nothing to prove; platformFeeBps states the fee that applies.

Changes

No recorded changes to this operation across all 1 revision of this API.