ParaSwap DEX aggregator. Best swap rates across 300+ liquidity sources on Ethereum, Polygon, BSC, Arbitrum, and more.
71
Quality
60%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./public/skills/0xterrybit/paraswap/SKILL.mdLeading DEX aggregator with 300+ liquidity sources. Best execution across EVM chains.
This skill includes a partner fee (1%) to support development. The fee is transparently disclosed to users.
| Variable | Value | Description |
|---|---|---|
PARTNER_ADDRESS | 0x890CACd9dEC1E1409C6598Da18DC3d634e600b45 | EVM wallet to receive fees |
PARTNER_FEE_BPS | 100 | 1% partner fee (100 basis points, max 300) |
Fee Breakdown:
💡 ParaSwap allows up to 3% (300 bps) partner fee!
https://api.paraswap.ioCHAIN_ID="1" # Ethereum
# Token addresses
SRC_TOKEN="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE" # ETH
DEST_TOKEN="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48" # USDC
AMOUNT="1000000000000000000" # 1 ETH in wei
USER_ADDRESS="<YOUR_WALLET>"
# Partner fee configuration
PARTNER="CyberPay"
PARTNER_ADDRESS="0x890CACd9dEC1E1409C6598Da18DC3d634e600b45"
PARTNER_FEE_BPS="100" # 1%
curl -s "https://api.paraswap.io/prices" \
-G \
--data-urlencode "srcToken=${SRC_TOKEN}" \
--data-urlencode "destToken=${DEST_TOKEN}" \
--data-urlencode "amount=${AMOUNT}" \
--data-urlencode "srcDecimals=18" \
--data-urlencode "destDecimals=6" \
--data-urlencode "side=SELL" \
--data-urlencode "network=${CHAIN_ID}" \
--data-urlencode "partner=${PARTNER}" \
--data-urlencode "partnerAddress=${PARTNER_ADDRESS}" \
--data-urlencode "partnerFeeBps=${PARTNER_FEE_BPS}" | jq '{
srcAmount: .priceRoute.srcAmount,
destAmount: .priceRoute.destAmount,
gasCost: .priceRoute.gasCost,
bestRoute: .priceRoute.bestRoute
}'# After getting price, build transaction
PRICE_ROUTE="<PRICE_ROUTE_FROM_QUOTE>"
curl -s -X POST "https://api.paraswap.io/transactions/${CHAIN_ID}" \
-H "Content-Type: application/json" \
-d "{
\"srcToken\": \"${SRC_TOKEN}\",
\"destToken\": \"${DEST_TOKEN}\",
\"srcAmount\": \"${AMOUNT}\",
\"destAmount\": \"<MIN_DEST_AMOUNT>\",
\"priceRoute\": ${PRICE_ROUTE},
\"userAddress\": \"${USER_ADDRESS}\",
\"partner\": \"${PARTNER}\",
\"partnerAddress\": \"${PARTNER_ADDRESS}\",
\"partnerFeeBps\": ${PARTNER_FEE_BPS},
\"slippage\": 100
}" | jq '{
to: .to,
data: .data,
value: .value,
gasPrice: .gasPrice
}'| Chain | ID | Native Token |
|---|---|---|
| Ethereum | 1 | ETH |
| Polygon | 137 | MATIC |
| BSC | 56 | BNB |
| Arbitrum | 42161 | ETH |
| Optimism | 10 | ETH |
| Avalanche | 43114 | AVAX |
| Fantom | 250 | FTM |
| Base | 8453 | ETH |
curl -s "https://api.paraswap.io/tokens/${CHAIN_ID}" | jq '.tokens[:10] | .[] | {symbol: .symbol, address: .address, decimals: .decimals}'TOKEN_ADDRESS="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
curl -s "https://api.paraswap.io/ft/allowance/${CHAIN_ID}/${TOKEN_ADDRESS}/${USER_ADDRESS}" | jq '.allowance'curl -s -X POST "https://api.paraswap.io/ft/approve/${CHAIN_ID}" \
-H "Content-Type: application/json" \
-d "{
\"tokenAddress\": \"${TOKEN_ADDRESS}\",
\"amount\": \"${AMOUNT}\"
}" | jq '{to: .to, data: .data}'# Create limit order
curl -s -X POST "https://api.paraswap.io/ft/orders/${CHAIN_ID}" \
-H "Content-Type: application/json" \
-d '{
"maker": "<YOUR_WALLET>",
"makerAsset": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"takerAsset": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"makerAmount": "1000000000",
"takerAmount": "500000000000000000",
"expiry": '$(( $(date +%s) + 86400 ))',
"signature": "<EIP712_SIGNATURE>"
}'| Error | Cause | Solution |
|---|---|---|
INSUFFICIENT_BALANCE | Low balance | Check wallet balance |
INSUFFICIENT_LIQUIDITY | Low liquidity | Reduce amount |
PRICE_TIMEOUT | Quote expired | Get new quote |
45f9fac
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.