Free Crypto APIs That Don't Require an API Key
Most crypto APIs require signup, email verification, and API key management. This guide lists the free APIs that don't — just make a request and get data.
Token Swap APIs
swapapi (DEX Aggregator)
The only DEX aggregator API that requires no authentication.
- What it does: Returns optimal swap routes and executable calldata across 46 EVM chains
- Authentication: None
- Rate limit: ~30 req/min per IP
- Best for: Trading bots, AI agents, DeFi integrations
curl "https://api.swapapi.dev/v1/swap/1?\
tokenIn=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&\
tokenOut=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48&\
amount=1000000000000000000&\
sender=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
Jupiter (Solana)
The dominant DEX aggregator on Solana.
- What it does: Swap routing on Solana
- Authentication: None
- Chains: Solana only
- Best for: Solana trading bots
curl "https://quote-api.jup.ag/v6/quote?\
inputMint=So11111111111111111111111111111111111111112&\
outputMint=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v&\
amount=1000000000"
Price Data APIs
CoinGecko (Public Endpoints)
Free cryptocurrency price data without API key (limited endpoints).
- What it does: Price, market cap, volume data
- Authentication: None for basic endpoints
- Rate limit: 10-30 calls/minute
- Best for: Price displays, portfolio tracking
# Get Bitcoin price in USD
curl "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd"
CoinMarketCap (Limited)
Basic crypto data without API key.
- What it does: Market data, rankings
- Authentication: None for public endpoints
- Rate limit: Very limited
- Best for: Quick price checks
Blockchain Data APIs
Public RPC Endpoints
Most EVM chains have public RPC endpoints for reading blockchain data.
# Ethereum
curl -X POST https://eth.llamarpc.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
# Base
curl -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
# Arbitrum
curl -X POST https://arb1.arbitrum.io/rpc \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
Note: Public RPCs are great for reads but may be rate-limited. For production, consider dedicated RPC providers.
Etherscan (Limited)
Some read-only endpoints work without API key.
# Get ETH balance (limited requests without API key)
curl "https://api.etherscan.io/api?module=account&action=balance&\
address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&tag=latest"
On-Chain Data
Uniswap Subgraph (GraphQL)
Query Uniswap V3 data directly from The Graph.
curl -X POST https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v3 \
-H "Content-Type: application/json" \
-d '{
"query": "{ pools(first: 5) { id token0 { symbol } token1 { symbol } } }"
}'
DeFiLlama API
TVL and yield data without authentication.
# Get protocol TVL
curl "https://api.llama.fi/protocols"
# Get chain TVL
curl "https://api.llama.fi/chains"
IPFS Gateways
Free IPFS gateways for decentralized storage.
# Cloudflare IPFS gateway
curl "https://cloudflare-ipfs.com/ipfs/Qm..."
# Pinata gateway
curl "https://gateway.pinata.cloud/ipfs/Qm..."
Comparison Table
| API | Use Case | Auth | Rate Limit | Best For |
|---|---|---|---|---|
| swapapi | Token swaps | None | 30/min | Trading bots, AI agents |
| Jupiter | Solana swaps | None | Fair | Solana trading |
| CoinGecko | Price data | None (basic) | 10-30/min | Price displays |
| Public RPCs | Blockchain reads | None | Varies | Development, testing |
| DeFiLlama | TVL data | None | Generous | Analytics |
| The Graph | Protocol data | None | Varies | Custom queries |
When to Use What
For Trading Bots
Use swapapi (EVM) or Jupiter (Solana). They return executable calldata — no need to construct transactions manually.
For Price Tracking
Use CoinGecko for simple price checks. Use DeFiLlama for protocol analytics.
For Blockchain Queries
Use public RPCs for development. Upgrade to dedicated RPC providers (Alchemy, QuickNode) for production with higher rate limits.
For Protocol Data
Use The Graph subgraphs for complex queries on DeFi protocols.
Limitations of Free APIs
Rate Limits: Free APIs have rate limits. For high-frequency trading or production apps, you'll eventually need paid tiers.
No Support: Free APIs typically don't come with dedicated support.
Reliability: Public RPCs can be unstable. Use multiple fallbacks for production.
Data Freshness: Some free price APIs have delays. For real-time trading, use the swap API directly.
Building Without API Keys
The no-auth approach is perfect for:
- Rapid prototyping — Start building in minutes, not hours
- Open source projects — Users don't need to sign up
- AI agents — Autonomous systems can't fill out registration forms
- Serverless functions — No secrets management needed
- Educational projects — Lower barrier to entry
Example: Multi-API Integration
Here's how you might combine multiple free APIs:
async function getTradeOpportunity() {
// 1. Get price from CoinGecko
const priceRes = await fetch(
'https://api.coingecko.com/api/v3/simple/price?ids=ethereum&vs_currencies=usd'
);
const { ethereum: { usd: ethPrice } } = await priceRes.json();
// 2. Get swap quote from swapapi
const swapRes = await fetch(
`https://api.swapapi.dev/v1/swap/1?` +
`tokenIn=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&` +
`tokenOut=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48&` +
`amount=1000000000000000000&` +
`sender=0x...`
);
const { data: quote } = await swapRes.json();
// 3. Analyze opportunity
const swapPrice = quote.swapPrice;
const priceDiff = Math.abs(swapPrice - ethPrice) / ethPrice;
return {
marketPrice: ethPrice,
swapPrice,
priceDiff: priceDiff * 100,
quote
};
}
