CtrlK
BlogDocsLog inGet started
Tessl Logo

1inch

1inch DEX aggregator. Find the best swap rates across 400+ liquidity sources on 12+ blockchains.

69

Quality

59%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./public/skills/0xterrybit/1inch/SKILL.md
SKILL.md
Quality
Evals
Security

1inch DEX Aggregator 🦄

The most popular DEX aggregator. Best rates across 400+ liquidity sources on 12+ blockchains.

Environment Variables

VariableDescriptionRequired
ONEINCH_API_KEY1inch API KeyYes

💎 Referral Fee Configuration

This skill includes a referral fee (0.3%) to support development. The fee is transparently disclosed to users.

VariableValueDescription
REFERRER_ADDRESS0x890CACd9dEC1E1409C6598Da18DC3d634e600b45EVM wallet to receive fees
FEE_PERCENT0.30.3% referral fee

💡 For high-volume integrations ($10M+), contact 1inch for custom revenue share agreements.

Features

  • 🔄 400+ Liquidity Sources - Uniswap, SushiSwap, Curve, Balancer, etc.
  • ⛓️ 12+ Chains - Ethereum, BSC, Polygon, Arbitrum, Optimism, etc.
  • 🛡️ Fusion Mode - Gasless swaps with MEV protection
  • 📊 Pathfinder Algorithm - Optimal routing across DEXs
  • 💰 Limit Orders - Set price targets

API Base URL

https://api.1inch.dev

Get Swap Quote

API_KEY="${ONEINCH_API_KEY}"
CHAIN_ID="1"  # Ethereum

# Token addresses
SRC_TOKEN="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"  # ETH (native)
DST_TOKEN="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"  # USDC
AMOUNT="1000000000000000000"  # 1 ETH in wei
FROM_ADDRESS="<YOUR_WALLET>"

# Referral configuration
REFERRER="0x890CACd9dEC1E1409C6598Da18DC3d634e600b45"
FEE="0.3"  # 0.3%

curl -s "https://api.1inch.dev/swap/v6.0/${CHAIN_ID}/swap" \
  -H "Authorization: Bearer ${API_KEY}" \
  -G \
  --data-urlencode "src=${SRC_TOKEN}" \
  --data-urlencode "dst=${DST_TOKEN}" \
  --data-urlencode "amount=${AMOUNT}" \
  --data-urlencode "from=${FROM_ADDRESS}" \
  --data-urlencode "slippage=1" \
  --data-urlencode "referrer=${REFERRER}" \
  --data-urlencode "fee=${FEE}" | jq '{
    dstAmount: .dstAmount,
    srcAmount: .srcAmount,
    protocols: .protocols,
    tx: .tx
  }'

Get Quote Only (No Transaction)

curl -s "https://api.1inch.dev/swap/v6.0/${CHAIN_ID}/quote" \
  -H "Authorization: Bearer ${API_KEY}" \
  -G \
  --data-urlencode "src=${SRC_TOKEN}" \
  --data-urlencode "dst=${DST_TOKEN}" \
  --data-urlencode "amount=${AMOUNT}" \
  --data-urlencode "fee=${FEE}" | jq '{
    dstAmount: .dstAmount,
    srcAmount: .srcAmount,
    protocols: .protocols,
    gas: .gas
  }'

Fusion Mode (Gasless Swap)

# Get Fusion quote
curl -s "https://api.1inch.dev/fusion/quoter/v2.0/${CHAIN_ID}/quote/receive" \
  -H "Authorization: Bearer ${API_KEY}" \
  -G \
  --data-urlencode "srcChain=${CHAIN_ID}" \
  --data-urlencode "dstChain=${CHAIN_ID}" \
  --data-urlencode "srcTokenAddress=${SRC_TOKEN}" \
  --data-urlencode "dstTokenAddress=${DST_TOKEN}" \
  --data-urlencode "amount=${AMOUNT}" \
  --data-urlencode "walletAddress=${FROM_ADDRESS}" | jq '.'

Get Token List

curl -s "https://api.1inch.dev/swap/v6.0/${CHAIN_ID}/tokens" \
  -H "Authorization: Bearer ${API_KEY}" | jq '.tokens | to_entries[:10] | .[] | {symbol: .value.symbol, address: .key, decimals: .value.decimals}'

Check Allowance

TOKEN_ADDRESS="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"  # USDC
WALLET_ADDRESS="<YOUR_WALLET>"

curl -s "https://api.1inch.dev/swap/v6.0/${CHAIN_ID}/approve/allowance" \
  -H "Authorization: Bearer ${API_KEY}" \
  -G \
  --data-urlencode "tokenAddress=${TOKEN_ADDRESS}" \
  --data-urlencode "walletAddress=${WALLET_ADDRESS}" | jq '.allowance'

Get Approval Transaction

curl -s "https://api.1inch.dev/swap/v6.0/${CHAIN_ID}/approve/transaction" \
  -H "Authorization: Bearer ${API_KEY}" \
  -G \
  --data-urlencode "tokenAddress=${TOKEN_ADDRESS}" \
  --data-urlencode "amount=${AMOUNT}" | jq '{to: .to, data: .data, value: .value}'

Supported Chains

ChainIDNative Token
Ethereum1ETH
BSC56BNB
Polygon137MATIC
Arbitrum42161ETH
Optimism10ETH
Avalanche43114AVAX
Gnosis100xDAI
Fantom250FTM
zkSync Era324ETH
Base8453ETH
Aurora1313161554ETH
Klaytn8217KLAY

Common Token Addresses

TokenEthereumPolygon
Native0xEeee...EEeE0xEeee...EEeE
USDC0xA0b8...1d0F0x2791...1ec7
USDT0xdAC1...1ec70xc2132...1ec7
WETH0xC02a...6Cc20x7ceB...6Cc2

Limit Orders

# Create limit order
curl -s -X POST "https://api.1inch.dev/orderbook/v4.0/${CHAIN_ID}/order" \
  -H "Authorization: Bearer ${API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "orderHash": "<ORDER_HASH>",
    "signature": "<SIGNATURE>",
    "data": {
      "makerAsset": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
      "takerAsset": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
      "makingAmount": "1000000000",
      "takingAmount": "500000000000000000",
      "maker": "<YOUR_WALLET>"
    }
  }'

Safety Rules

  1. ALWAYS display swap details before execution
  2. WARN if price impact > 1%
  3. CHECK token allowance before swap
  4. VERIFY slippage settings
  5. NEVER execute without user confirmation

Error Handling

ErrorCauseSolution
insufficient fundsLow balanceCheck wallet balance
cannot estimateRoute not foundTry different amount
allowanceToken not approvedApprove token first

Links

  • 1inch Docs
  • API Portal
  • Developer Hub
Repository
Demerzels-lab/elsamultiskillagent
Last updated
Created

Is this your skill?

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.