You can swap any token pair through the Jupiter aggregator. Jupiter routes orders across Solana’s DEXes to find the best price, and includes MEV protection to prevent front-running.
Execute a swap
curl -X POST https://api.useknot.xyz/wallets/me/actions/trade \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"from": "USDC",
"to": "SOL",
"amount": 50,
"slippageBps": 50
}'
Request parameters
The source token. Use a common symbol (e.g., USDC) or the token’s Solana mint address.
The destination token. Use a common symbol or mint address.
The amount of the source token to swap.
Slippage tolerance in basis points. Defaults to 50 (0.5%). See slippage guidance below.
Response
{
"status" : true ,
"data" : {
"signature" : "4kLmN9xR..." ,
"explorerUrl" : "https://solscan.io/tx/4kLmN9xR..." ,
"inputAmount" : "50 USDC" ,
"outputAmount" : "0.581 SOL" ,
"priceImpact" : "0.01%" ,
"route" : [ "Raydium" , "Orca" ]
}
}
Response fields
The on-chain transaction signature.
Link to view the transaction on Solscan.
The amount spent, formatted with the source token symbol (e.g., 50 USDC).
The amount received, formatted with the destination token symbol (e.g., 0.581 SOL).
The estimated price impact of the swap as a percentage.
The list of DEXes used to execute the swap. Jupiter may split orders across multiple venues for better pricing.
Slippage
Slippage tolerance protects you against price movement between the time the order is submitted and when it lands on-chain. If the final price moves beyond the tolerance, the transaction is rejected rather than executed at an unfavorable price.
Basis points Percentage Recommended use 10 0.1% Stable pairs (USDC/USDT) 50 0.5% Standard swaps 100 1.0% Volatile tokens 300 3.0% Low-liquidity tokens
Setting slippage too low may cause transactions to fail during volatile conditions. Setting it too high may result in poor execution prices.
Supported tokens
Jupiter supports thousands of tokens on Solana. You can identify tokens in two ways:
By symbol
Common symbols are recognized automatically:
SOL, USDC, USDT, JUP, BONK, WIF, RAY, ORCA
By mint address
For any token not covered by a common symbol, use its Solana mint address:
{
"from" : "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" ,
"to" : "So11111111111111111111111111111111111111112" ,
"amount" : 100 ,
"slippageBps" : 50
}
Jupiter integration and MEV protection
Knot routes all swaps through Jupiter, Solana’s leading DEX aggregator. Jupiter:
Splits orders across multiple liquidity pools (Raydium, Orca, and others) to minimize price impact
Uses smart routing to find the optimal path for any token pair
Includes MEV protection to prevent sandwich attacks on your transactions
The route field in the response shows which DEXes were used for a given swap.
Common trade scenarios
Use tight slippage for stablecoin-to-stablecoin swaps since price variation is minimal: curl -X POST https://api.useknot.xyz/wallets/me/actions/trade \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"from": "USDC",
"to": "USDT",
"amount": 500,
"slippageBps": 10
}'
Use higher slippage when trading low-liquidity or volatile tokens to avoid transaction failures: curl -X POST https://api.useknot.xyz/wallets/me/actions/trade \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"from": "SOL",
"to": "BONK",
"amount": 1,
"slippageBps": 300
}'
Trade using mint addresses
Specify tokens by their on-chain mint address when their symbol is not recognized: curl -X POST https://api.useknot.xyz/wallets/me/actions/trade \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"from": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"to": "So11111111111111111111111111111111111111112",
"amount": 100,
"slippageBps": 50
}'
Policy constraints
Trading must be enabled in your agent’s policy. If you receive a 403 error when attempting a swap, check that trading is allowed in your policy settings.