╔══════════════════════════════════════════════════════════════════════════════════════╗ ║ CRYPTOCURRENCY API CONFIGURATION - COMPLETE GUIDE ║ ║ تنظیمات کامل API های ارز دیجیتال ║ ║ Updated: October 2025 ║ ╚══════════════════════════════════════════════════════════════════════════════════════╝ ═══════════════════════════════════════════════════════════════════════════════════════ 🔑 API KEYS - کلیدهای API ═══════════════════════════════════════════════════════════════════════════════════════ EXISTING KEYS (کلیدهای موجود): ───────────────────────────────── TronScan: 7ae72726-bffe-4e74-9c33-97b761eeea21 BscScan: K62RKHGXTDCG53RU4MCG6XABIMJKTN19IT Etherscan: SZHYFZK2RR8H9TIMJBVW54V4H81K2Z2KR2 Etherscan_2: T6IR8VJHX2NE6ZJW2S3FDVN1TYG4PYYI45 CoinMarketCap: 04cf4b5b-9868-465c-8ba0-9f2e78c92eb1 CoinMarketCap_2: b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c NewsAPI: pub_346789abc123def456789ghi012345jkl CryptoCompare: e79c8e6d4c5b4a3f2e1d0c9b8a7f6e5d4c3b2a1f ═══════════════════════════════════════════════════════════════════════════════════════ 🌐 CORS PROXY SOLUTIONS - راه‌حل‌های پروکسی CORS ═══════════════════════════════════════════════════════════════════════════════════════ FREE CORS PROXIES (پروکسی‌های رایگان): ────────────────────────────────────────── 1. AllOrigins (بدون محدودیت) URL: https://api.allorigins.win/get?url={TARGET_URL} Example: https://api.allorigins.win/get?url=https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd Features: JSON/JSONP, گزینه raw content 2. CORS.SH (بدون rate limit) URL: https://proxy.cors.sh/{TARGET_URL} Example: https://proxy.cors.sh/https://api.coinmarketcap.com/v1/cryptocurrency/quotes/latest Features: سریع، قابل اعتماد، نیاز به header Origin یا x-requested-with 3. Corsfix (60 req/min رایگان) URL: https://proxy.corsfix.com/?url={TARGET_URL} Example: https://proxy.corsfix.com/?url=https://api.etherscan.io/api Features: header override، cached responses 4. CodeTabs (محبوب) URL: https://api.codetabs.com/v1/proxy?quest={TARGET_URL} Example: https://api.codetabs.com/v1/proxy?quest=https://api.binance.com/api/v3/ticker/price 5. ThingProxy (10 req/sec) URL: https://thingproxy.freeboard.io/fetch/{TARGET_URL} Example: https://thingproxy.freeboard.io/fetch/https://api.nomics.com/v1/currencies/ticker Limit: 100,000 characters per request 6. Crossorigin.me URL: https://crossorigin.me/{TARGET_URL} Note: فقط GET، محدودیت 2MB 7. Self-Hosted CORS-Anywhere GitHub: https://github.com/Rob--W/cors-anywhere Deploy: Cloudflare Workers، Vercel، Heroku USAGE PATTERN (الگوی استفاده): ──────────────────────────────── // Without CORS Proxy fetch('https://api.example.com/data') // With CORS Proxy const corsProxy = 'https://api.allorigins.win/get?url='; fetch(corsProxy + encodeURIComponent('https://api.example.com/data')) .then(res => res.json()) .then(data => console.log(data.contents)); ═══════════════════════════════════════════════════════════════════════════════════════ 🔗 RPC NODE PROVIDERS - ارائه‌دهندگان نود RPC ═══════════════════════════════════════════════════════════════════════════════════════ ETHEREUM RPC ENDPOINTS: ─────────────────────────────────── 1. Infura (رایگان: 100K req/day) Mainnet: https://mainnet.infura.io/v3/{PROJECT_ID} Sepolia: https://sepolia.infura.io/v3/{PROJECT_ID} Docs: https://docs.infura.io 2. Alchemy (رایگان: 300M compute units/month) Mainnet: https://eth-mainnet.g.alchemy.com/v2/{API_KEY} Sepolia: https://eth-sepolia.g.alchemy.com/v2/{API_KEY} WebSocket: wss://eth-mainnet.g.alchemy.com/v2/{API_KEY} Docs: https://docs.alchemy.com 3. Ankr (رایگان: بدون محدودیت عمومی) Mainnet: https://rpc.ankr.com/eth Docs: https://www.ankr.com/docs 4. PublicNode (کاملا رایگان) Mainnet: https://ethereum.publicnode.com All-in-one: https://ethereum-rpc.publicnode.com 5. Cloudflare (رایگان) Mainnet: https://cloudflare-eth.com 6. LlamaNodes (رایگان) Mainnet: https://eth.llamarpc.com 7. 1RPC (رایگان با privacy) Mainnet: https://1rpc.io/eth 8. Chainnodes (ارزان) Mainnet: https://mainnet.chainnodes.org/{API_KEY} 9. dRPC (decentralized) Mainnet: https://eth.drpc.org Docs: https://drpc.org BSC (BINANCE SMART CHAIN) RPC: ────────────────────────────────── 1. Official BSC RPC (رایگان) Mainnet: https://bsc-dataseed.binance.org Alt1: https://bsc-dataseed1.defibit.io Alt2: https://bsc-dataseed1.ninicoin.io 2. Ankr BSC Mainnet: https://rpc.ankr.com/bsc 3. PublicNode BSC Mainnet: https://bsc-rpc.publicnode.com 4. Nodereal BSC (رایگان: 3M req/day) Mainnet: https://bsc-mainnet.nodereal.io/v1/{API_KEY} TRON RPC ENDPOINTS: ─────────────────────────── 1. TronGrid (رایگان) Mainnet: https://api.trongrid.io Full Node: https://api.trongrid.io/wallet/getnowblock 2. TronStack (رایگان) Mainnet: https://api.tronstack.io 3. Nile Testnet Testnet: https://api.nileex.io POLYGON RPC: ────────────────── 1. Polygon Official (رایگان) Mainnet: https://polygon-rpc.com Mumbai: https://rpc-mumbai.maticvigil.com 2. Ankr Polygon Mainnet: https://rpc.ankr.com/polygon 3. Alchemy Polygon Mainnet: https://polygon-mainnet.g.alchemy.com/v2/{API_KEY} ═══════════════════════════════════════════════════════════════════════════════════════ 📊 BLOCK EXPLORER APIs - APIهای کاوشگر بلاکچین ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: ETHEREUM EXPLORERS (11 endpoints) ────────────────────────────────────────────── PRIMARY: Etherscan ───────────────────── URL: https://api.etherscan.io/api Key: SZHYFZK2RR8H9TIMJBVW54V4H81K2Z2KR2 Rate Limit: 5 calls/sec (free tier) Docs: https://docs.etherscan.io Endpoints: • Balance: ?module=account&action=balance&address={address}&tag=latest&apikey={KEY} • Transactions: ?module=account&action=txlist&address={address}&startblock=0&endblock=99999999&sort=asc&apikey={KEY} • Token Balance: ?module=account&action=tokenbalance&contractaddress={contract}&address={address}&tag=latest&apikey={KEY} • Gas Price: ?module=gastracker&action=gasoracle&apikey={KEY} Example (No Proxy): fetch('https://api.etherscan.io/api?module=account&action=balance&address=0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb&tag=latest&apikey=SZHYFZK2RR8H9TIMJBVW54V4H81K2Z2KR2') Example (With CORS Proxy): const proxy = 'https://api.allorigins.win/get?url='; const url = 'https://api.etherscan.io/api?module=account&action=balance&address=0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb&apikey=SZHYFZK2RR8H9TIMJBVW54V4H81K2Z2KR2'; fetch(proxy + encodeURIComponent(url)) .then(r => r.json()) .then(data => { const result = JSON.parse(data.contents); console.log('Balance:', result.result / 1e18, 'ETH'); }); FALLBACK 1: Etherscan (Second Key) ──────────────────────────────────── URL: https://api.etherscan.io/api Key: T6IR8VJHX2NE6ZJW2S3FDVN1TYG4PYYI45 FALLBACK 2: Blockchair ────────────────────── URL: https://api.blockchair.com/ethereum/dashboards/address/{address} Free: 1,440 requests/day Docs: https://blockchair.com/api/docs FALLBACK 3: BlockScout (Open Source) ───────────────────────────────────── URL: https://eth.blockscout.com/api Free: بدون محدودیت Docs: https://docs.blockscout.com FALLBACK 4: Ethplorer ────────────────────── URL: https://api.ethplorer.io Endpoint: /getAddressInfo/{address}?apiKey=freekey Free: محدود Docs: https://github.com/EverexIO/Ethplorer/wiki/Ethplorer-API FALLBACK 5: Etherchain ────────────────────── URL: https://www.etherchain.org/api Free: بله Docs: https://www.etherchain.org/documentation/api FALLBACK 6: Chainlens ───────────────────── URL: https://api.chainlens.com Free tier available Docs: https://docs.chainlens.com CATEGORY 2: BSC EXPLORERS (6 endpoints) ──────────────────────────────────────── PRIMARY: BscScan ──────────────── URL: https://api.bscscan.com/api Key: K62RKHGXTDCG53RU4MCG6XABIMJKTN19IT Rate Limit: 5 calls/sec Docs: https://docs.bscscan.com Endpoints: • BNB Balance: ?module=account&action=balance&address={address}&apikey={KEY} • BEP-20 Balance: ?module=account&action=tokenbalance&contractaddress={token}&address={address}&apikey={KEY} • Transactions: ?module=account&action=txlist&address={address}&apikey={KEY} Example: fetch('https://api.bscscan.com/api?module=account&action=balance&address=0x1234...&apikey=K62RKHGXTDCG53RU4MCG6XABIMJKTN19IT') .then(r => r.json()) .then(data => console.log('BNB:', data.result / 1e18)); FALLBACK 1: BitQuery (BSC) ────────────────────────── URL: https://graphql.bitquery.io Method: GraphQL POST Free: 10K queries/month Docs: https://docs.bitquery.io GraphQL Example: query { ethereum(network: bsc) { address(address: {is: "0x..."}) { balances { currency { symbol } value } } } } FALLBACK 2: Ankr MultiChain ──────────────────────────── URL: https://rpc.ankr.com/multichain Method: JSON-RPC POST Free: Public endpoints Docs: https://www.ankr.com/docs/ FALLBACK 3: Nodereal BSC ──────────────────────── URL: https://bsc-mainnet.nodereal.io/v1/{API_KEY} Free tier: 3M requests/day Docs: https://docs.nodereal.io FALLBACK 4: BscTrace ──────────────────── URL: https://api.bsctrace.com Free: Limited Alternative explorer FALLBACK 5: 1inch BSC API ───────────────────────── URL: https://api.1inch.io/v5.0/56 Free: For trading data Docs: https://docs.1inch.io CATEGORY 3: TRON EXPLORERS (5 endpoints) ───────────────────────────────────────── PRIMARY: TronScan ───────────────── URL: https://apilist.tronscanapi.com/api Key: 7ae72726-bffe-4e74-9c33-97b761eeea21 Rate Limit: Varies Docs: https://github.com/tronscan/tronscan-frontend/blob/dev2019/document/api.md Endpoints: • Account: /account?address={address} • Transactions: /transaction?address={address}&limit=20 • TRC20 Transfers: /token_trc20/transfers?address={address} • Account Resources: /account/detail?address={address} Example: fetch('https://apilist.tronscanapi.com/api/account?address=TxxxXXXxxx') .then(r => r.json()) .then(data => console.log('TRX Balance:', data.balance / 1e6)); FALLBACK 1: TronGrid (Official) ──────────────────────────────── URL: https://api.trongrid.io Free: Public Docs: https://developers.tron.network/docs JSON-RPC Example: fetch('https://api.trongrid.io/wallet/getaccount', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify({ address: 'TxxxXXXxxx', visible: true }) }) FALLBACK 2: Tron Official API ────────────────────────────── URL: https://api.tronstack.io Free: Public Docs: Similar to TronGrid FALLBACK 3: Blockchair (TRON) ────────────────────────────── URL: https://api.blockchair.com/tron/dashboards/address/{address} Free: 1,440 req/day Docs: https://blockchair.com/api/docs FALLBACK 4: Tronscan API v2 ─────────────────────────── URL: https://api.tronscan.org/api Alternative endpoint Similar structure FALLBACK 5: GetBlock TRON ───────────────────────── URL: https://go.getblock.io/tron Free tier available Docs: https://getblock.io/docs/ ═══════════════════════════════════════════════════════════════════════════════════════ 💰 MARKET DATA APIs - APIهای داده‌های بازار ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: PRICE & MARKET CAP (15+ endpoints) ─────────────────────────────────────────────── PRIMARY: CoinGecko (FREE - بدون کلید) ────────────────────────────────────── URL: https://api.coingecko.com/api/v3 Rate Limit: 10-50 calls/min (free) Docs: https://www.coingecko.com/en/api/documentation Best Endpoints: • Simple Price: /simple/price?ids=bitcoin,ethereum&vs_currencies=usd • Coin Data: /coins/{id}?localization=false • Market Chart: /coins/{id}/market_chart?vs_currency=usd&days=7 • Global Data: /global • Trending: /search/trending • Categories: /coins/categories Example (Works Everywhere): fetch('https://api.coingecko.com/api/v3/simple/price?ids=bitcoin,ethereum,tron&vs_currencies=usd,eur') .then(r => r.json()) .then(data => console.log(data)); // Output: {bitcoin: {usd: 45000, eur: 42000}, ...} FALLBACK 1: CoinMarketCap (با کلید) ───────────────────────────────────── URL: https://pro-api.coinmarketcap.com/v1 Key 1: b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c Key 2: 04cf4b5b-9868-465c-8ba0-9f2e78c92eb1 Rate Limit: 333 calls/day (free) Docs: https://coinmarketcap.com/api/documentation/v1/ Endpoints: • Latest Quotes: /cryptocurrency/quotes/latest?symbol=BTC,ETH • Listings: /cryptocurrency/listings/latest?limit=100 • Market Pairs: /cryptocurrency/market-pairs/latest?id=1 Example (Requires API Key in Header): fetch('https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol=BTC', { headers: { 'X-CMC_PRO_API_KEY': 'b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c' } }) .then(r => r.json()) .then(data => console.log(data.data.BTC)); With CORS Proxy: const proxy = 'https://proxy.cors.sh/'; fetch(proxy + 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol=BTC', { headers: { 'X-CMC_PRO_API_KEY': 'b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c', 'Origin': 'https://myapp.com' } }) FALLBACK 2: CryptoCompare ───────────────────────── URL: https://min-api.cryptocompare.com/data Key: e79c8e6d4c5b4a3f2e1d0c9b8a7f6e5d4c3b2a1f Free: 100K calls/month Docs: https://min-api.cryptocompare.com/documentation Endpoints: • Price Multi: /pricemulti?fsyms=BTC,ETH&tsyms=USD,EUR&api_key={KEY} • Historical: /v2/histoday?fsym=BTC&tsym=USD&limit=30&api_key={KEY} • Top Volume: /top/totalvolfull?limit=10&tsym=USD&api_key={KEY} FALLBACK 3: Coinpaprika (FREE) ─────────────────────────────── URL: https://api.coinpaprika.com/v1 Rate Limit: 20K calls/month Docs: https://api.coinpaprika.com/ Endpoints: • Tickers: /tickers • Coin: /coins/btc-bitcoin • Historical: /coins/btc-bitcoin/ohlcv/historical FALLBACK 4: CoinCap (FREE) ────────────────────────── URL: https://api.coincap.io/v2 Rate Limit: 200 req/min Docs: https://docs.coincap.io/ Endpoints: • Assets: /assets • Specific: /assets/bitcoin • History: /assets/bitcoin/history?interval=d1 FALLBACK 5: Nomics (FREE) ───────────────────────── URL: https://api.nomics.com/v1 No Rate Limit on free tier Docs: https://p.nomics.com/cryptocurrency-bitcoin-api FALLBACK 6: Messari (FREE) ────────────────────────── URL: https://data.messari.io/api/v1 Rate Limit: Generous Docs: https://messari.io/api/docs FALLBACK 7: CoinLore (FREE) ─────────────────────────── URL: https://api.coinlore.net/api Rate Limit: None Docs: https://www.coinlore.com/cryptocurrency-data-api FALLBACK 8: Binance Public API ─────────────────────────────── URL: https://api.binance.com/api/v3 Free: بله Docs: https://binance-docs.github.io/apidocs/spot/en/ Endpoints: • Price: /ticker/price?symbol=BTCUSDT • 24hr Stats: /ticker/24hr?symbol=ETHUSDT FALLBACK 9: CoinDesk API ──────────────────────── URL: https://api.coindesk.com/v1 Free: Bitcoin price index Docs: https://www.coindesk.com/coindesk-api FALLBACK 10: Mobula API ─────────────────────── URL: https://api.mobula.io/api/1 Free: 50% cheaper than CMC Coverage: 2.3M+ cryptocurrencies Docs: https://developer.mobula.fi/ FALLBACK 11: Token Metrics API ─────────────────────────────── URL: https://api.tokenmetrics.com/v2 Free API key available AI-driven insights Docs: https://api.tokenmetrics.com/docs FALLBACK 12: FreeCryptoAPI ────────────────────────── URL: https://api.freecryptoapi.com Free: Beginner-friendly Coverage: 3,000+ coins FALLBACK 13: DIA Data ───────────────────── URL: https://api.diadata.org/v1 Free: Decentralized oracle Transparent pricing Docs: https://docs.diadata.org FALLBACK 14: Alternative.me ─────────────────────────── URL: https://api.alternative.me/v2 Free: Price + Fear & Greed Docs: In API responses FALLBACK 15: CoinStats API ────────────────────────── URL: https://api.coinstats.app/public/v1 Free tier available ═══════════════════════════════════════════════════════════════════════════════════════ 📰 NEWS & SOCIAL APIs - APIهای اخبار و شبکه‌های اجتماعی ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: CRYPTO NEWS (10+ endpoints) ──────────────────────────────────────── PRIMARY: CryptoPanic (FREE) ─────────────────────────── URL: https://cryptopanic.com/api/v1 Free: بله Docs: https://cryptopanic.com/developers/api/ Endpoints: • Posts: /posts/?auth_token={TOKEN}&public=true • Currencies: /posts/?currencies=BTC,ETH • Filter: /posts/?filter=rising Example: fetch('https://cryptopanic.com/api/v1/posts/?public=true') .then(r => r.json()) .then(data => console.log(data.results)); FALLBACK 1: NewsAPI.org ─────────────────────── URL: https://newsapi.org/v2 Key: pub_346789abc123def456789ghi012345jkl Free: 100 req/day Docs: https://newsapi.org/docs FALLBACK 2: CryptoControl ───────────────────────── URL: https://cryptocontrol.io/api/v1/public Free tier available Docs: https://cryptocontrol.io/api FALLBACK 3: CoinDesk News ───────────────────────── URL: https://www.coindesk.com/arc/outboundfeeds/rss/ Free RSS feed FALLBACK 4: CoinTelegraph API ───────────────────────────── URL: https://cointelegraph.com/api/v1 Free: RSS and JSON feeds FALLBACK 5: CryptoSlate ─────────────────────── URL: https://cryptoslate.com/api Free: Limited FALLBACK 6: The Block API ───────────────────────── URL: https://api.theblock.co/v1 Premium service FALLBACK 7: Bitcoin Magazine RSS ──────────────────────────────── URL: https://bitcoinmagazine.com/.rss/full/ Free RSS FALLBACK 8: Decrypt RSS ─────────────────────── URL: https://decrypt.co/feed Free RSS FALLBACK 9: Reddit Crypto ───────────────────────── URL: https://www.reddit.com/r/CryptoCurrency/new.json Free: Public JSON Limit: 60 req/min Example: fetch('https://www.reddit.com/r/CryptoCurrency/hot.json?limit=25') .then(r => r.json()) .then(data => console.log(data.data.children)); FALLBACK 10: Twitter/X API (v2) ─────────────────────────────── URL: https://api.twitter.com/2 Requires: OAuth 2.0 Free tier: 1,500 tweets/month ═══════════════════════════════════════════════════════════════════════════════════════ 😱 SENTIMENT & MOOD APIs - APIهای احساسات بازار ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: FEAR & GREED INDEX (5+ endpoints) ────────────────────────────────────────────── PRIMARY: Alternative.me (FREE) ────────────────────────────── URL: https://api.alternative.me/fng/ Free: بدون محدودیت Docs: https://alternative.me/crypto/fear-and-greed-index/ Endpoints: • Current: /?limit=1 • Historical: /?limit=30 • Date Range: /?limit=10&date_format=world Example: fetch('https://api.alternative.me/fng/?limit=1') .then(r => r.json()) .then(data => { const fng = data.data[0]; console.log(`Fear & Greed: ${fng.value} - ${fng.value_classification}`); }); // Output: "Fear & Greed: 45 - Fear" FALLBACK 1: LunarCrush ────────────────────── URL: https://api.lunarcrush.com/v2 Free tier: Limited Docs: https://lunarcrush.com/developers/api Endpoints: • Assets: ?data=assets&key={KEY} • Market: ?data=market&key={KEY} • Influencers: ?data=influencers&key={KEY} FALLBACK 2: Santiment (GraphQL) ──────────────────────────────── URL: https://api.santiment.net/graphql Free tier available Docs: https://api.santiment.net/graphiql GraphQL Example: query { getMetric(metric: "sentiment_balance_total") { timeseriesData( slug: "bitcoin" from: "2025-10-01T00:00:00Z" to: "2025-10-31T00:00:00Z" interval: "1d" ) { datetime value } } } FALLBACK 3: TheTie.io ───────────────────── URL: https://api.thetie.io Premium mainly Docs: https://docs.thetie.io FALLBACK 4: CryptoQuant ─────────────────────── URL: https://api.cryptoquant.com/v1 Free tier: Limited Docs: https://docs.cryptoquant.com FALLBACK 5: Glassnode Social ──────────────────────────── URL: https://api.glassnode.com/v1/metrics/social Free tier: Limited Docs: https://docs.glassnode.com FALLBACK 6: Augmento (Social) ────────────────────────────── URL: https://api.augmento.ai/v1 AI-powered sentiment Free trial available ═══════════════════════════════════════════════════════════════════════════════════════ 🐋 WHALE TRACKING APIs - APIهای ردیابی نهنگ‌ها ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: WHALE TRANSACTIONS (8+ endpoints) ────────────────────────────────────────────── PRIMARY: Whale Alert ──────────────────── URL: https://api.whale-alert.io/v1 Free: Limited (7-day trial) Paid: From $20/month Docs: https://docs.whale-alert.io Endpoints: • Transactions: /transactions?api_key={KEY}&min_value=1000000&start={timestamp}&end={timestamp} • Status: /status?api_key={KEY} Example: const start = Math.floor(Date.now()/1000) - 3600; // 1 hour ago const end = Math.floor(Date.now()/1000); fetch(`https://api.whale-alert.io/v1/transactions?api_key=YOUR_KEY&min_value=1000000&start=${start}&end=${end}`) .then(r => r.json()) .then(data => { data.transactions.forEach(tx => { console.log(`${tx.amount} ${tx.symbol} from ${tx.from.owner} to ${tx.to.owner}`); }); }); FALLBACK 1: ClankApp (FREE) ─────────────────────────── URL: https://clankapp.com/api Free: بله Telegram: @clankapp Twitter: @ClankApp Docs: https://clankapp.com/api/ Features: • 24 blockchains • Real-time whale alerts • Email & push notifications • No API key needed Example: fetch('https://clankapp.com/api/whales/recent') .then(r => r.json()) .then(data => console.log(data)); FALLBACK 2: BitQuery Whale Tracking ──────────────────────────────────── URL: https://graphql.bitquery.io Free: 10K queries/month Docs: https://docs.bitquery.io GraphQL Example (Large ETH Transfers): { ethereum(network: ethereum) { transfers( amount: {gt: 1000} currency: {is: "ETH"} date: {since: "2025-10-25"} ) { block { timestamp { time } } sender { address } receiver { address } amount transaction { hash } } } } FALLBACK 3: Arkham Intelligence ──────────────────────────────── URL: https://api.arkham.com Paid service mainly Docs: https://docs.arkham.com FALLBACK 4: Nansen ────────────────── URL: https://api.nansen.ai/v1 Premium: Expensive but powerful Docs: https://docs.nansen.ai Features: • Smart Money tracking • Wallet labeling • Multi-chain support FALLBACK 5: DexCheck Whale Tracker ─────────────────────────────────── Free wallet tracking feature 22 chains supported Telegram bot integration FALLBACK 6: DeBank ────────────────── URL: https://api.debank.com Free: Portfolio tracking Web3 social features FALLBACK 7: Zerion API ────────────────────── URL: https://api.zerion.io Similar to DeBank DeFi portfolio tracker FALLBACK 8: Whalemap ──────────────────── URL: https://whalemap.io Bitcoin & ERC-20 focus Charts and analytics ═══════════════════════════════════════════════════════════════════════════════════════ 🔍 ON-CHAIN ANALYTICS APIs - APIهای تحلیل زنجیره ═══════════════════════════════════════════════════════════════════════════════════════ CATEGORY 1: BLOCKCHAIN DATA (10+ endpoints) ──────────────────────────────────────────── PRIMARY: The Graph (Subgraphs) ────────────────────────────── URL: https://api.thegraph.com/subgraphs/name/{org}/{subgraph} Free: Public subgraphs Docs: https://thegraph.com/docs/ Popular Subgraphs: • Uniswap V3: /uniswap/uniswap-v3 • Aave V2: /aave/protocol-v2 • Compound: /graphprotocol/compound-v2 Example (Uniswap V3): fetch('https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v3', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify({ query: `{ pools(first: 5, orderBy: volumeUSD, orderDirection: desc) { id token0 { symbol } token1 { symbol } volumeUSD } }` }) }) FALLBACK 1: Glassnode ───────────────────── URL: https://api.glassnode.com/v1 Free tier: Limited metrics Docs: https://docs.glassnode.com Endpoints: • SOPR: /metrics/indicators/sopr?a=BTC&api_key={KEY} • HODL Waves: /metrics/supply/hodl_waves?a=BTC&api_key={KEY} FALLBACK 2: IntoTheBlock ──────────────────────── URL: https://api.intotheblock.com/v1 Free tier available Docs: https://developers.intotheblock.com FALLBACK 3: Dune Analytics ────────────────────────── URL: https://api.dune.com/api/v1 Free: Query results Docs: https://docs.dune.com/api-reference/ FALLBACK 4: Covalent ──────────────────── URL: https://api.covalenthq.com/v1 Free tier: 100K credits Multi-chain support Docs: https://www.covalenthq.com/docs/api/ Example (Ethereum balances): fetch('https://api.covalenthq.com/v1/1/address/0x.../balances_v2/?key=YOUR_KEY') FALLBACK 5: Moralis ─────────────────── URL: https://deep-index.moralis.io/api/v2 Free: 100K compute units/month Docs: https://docs.moralis.io FALLBACK 6: Alchemy NFT API ─────────────────────────── Included with Alchemy account NFT metadata & transfers FALLBACK 7: QuickNode Functions ──────────────────────────────── Custom on-chain queries Token balances, NFTs FALLBACK 8: Transpose ───────────────────── URL: https://api.transpose.io Free tier available SQL-like queries FALLBACK 9: Footprint Analytics ──────────────────────────────── URL: https://api.footprint.network Free: Community tier No-code analytics FALLBACK 10: Nansen Query ───────────────────────── Premium institutional tool Advanced on-chain intelligence ═══════════════════════════════════════════════════════════════════════════════════════ 🔧 COMPLETE JAVASCRIPT IMPLEMENTATION پیاده‌سازی کامل جاوااسکریپت ═══════════════════════════════════════════════════════════════════════════════════════ // ═══════════════════════════════════════════════════════════════════════════════ // CONFIG.JS - تنظیمات مرکزی API // ═══════════════════════════════════════════════════════════════════════════════ const API_CONFIG = { // CORS Proxies (پروکسی‌های CORS) corsProxies: [ 'https://api.allorigins.win/get?url=', 'https://proxy.cors.sh/', 'https://proxy.corsfix.com/?url=', 'https://api.codetabs.com/v1/proxy?quest=', 'https://thingproxy.freeboard.io/fetch/' ], // Block Explorers (کاوشگرهای بلاکچین) explorers: { ethereum: { primary: { name: 'etherscan', baseUrl: 'https://api.etherscan.io/api', key: 'SZHYFZK2RR8H9TIMJBVW54V4H81K2Z2KR2', rateLimit: 5 // calls per second }, fallbacks: [ { name: 'etherscan2', baseUrl: 'https://api.etherscan.io/api', key: 'T6IR8VJHX2NE6ZJW2S3FDVN1TYG4PYYI45' }, { name: 'blockchair', baseUrl: 'https://api.blockchair.com/ethereum', key: '' }, { name: 'blockscout', baseUrl: 'https://eth.blockscout.com/api', key: '' }, { name: 'ethplorer', baseUrl: 'https://api.ethplorer.io', key: 'freekey' } ] }, bsc: { primary: { name: 'bscscan', baseUrl: 'https://api.bscscan.com/api', key: 'K62RKHGXTDCG53RU4MCG6XABIMJKTN19IT', rateLimit: 5 }, fallbacks: [ { name: 'blockchair', baseUrl: 'https://api.blockchair.com/binance-smart-chain', key: '' }, { name: 'bitquery', baseUrl: 'https://graphql.bitquery.io', key: '', method: 'graphql' } ] }, tron: { primary: { name: 'tronscan', baseUrl: 'https://apilist.tronscanapi.com/api', key: '7ae72726-bffe-4e74-9c33-97b761eeea21', rateLimit: 10 }, fallbacks: [ { name: 'trongrid', baseUrl: 'https://api.trongrid.io', key: '' }, { name: 'tronstack', baseUrl: 'https://api.tronstack.io', key: '' }, { name: 'blockchair', baseUrl: 'https://api.blockchair.com/tron', key: '' } ] } }, // Market Data (داده‌های بازار) marketData: { primary: { name: 'coingecko', baseUrl: 'https://api.coingecko.com/api/v3', key: '', // بدون کلید needsProxy: false, rateLimit: 50 // calls per minute }, fallbacks: [ { name: 'coinmarketcap', baseUrl: 'https://pro-api.coinmarketcap.com/v1', key: 'b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c', headerKey: 'X-CMC_PRO_API_KEY', needsProxy: true }, { name: 'coinmarketcap2', baseUrl: 'https://pro-api.coinmarketcap.com/v1', key: '04cf4b5b-9868-465c-8ba0-9f2e78c92eb1', headerKey: 'X-CMC_PRO_API_KEY', needsProxy: true }, { name: 'coincap', baseUrl: 'https://api.coincap.io/v2', key: '' }, { name: 'coinpaprika', baseUrl: 'https://api.coinpaprika.com/v1', key: '' }, { name: 'binance', baseUrl: 'https://api.binance.com/api/v3', key: '' }, { name: 'coinlore', baseUrl: 'https://api.coinlore.net/api', key: '' } ] }, // RPC Nodes (نودهای RPC) rpcNodes: { ethereum: [ 'https://eth.llamarpc.com', 'https://ethereum.publicnode.com', 'https://cloudflare-eth.com', 'https://rpc.ankr.com/eth', 'https://eth.drpc.org' ], bsc: [ 'https://bsc-dataseed.binance.org', 'https://bsc-dataseed1.defibit.io', 'https://rpc.ankr.com/bsc', 'https://bsc-rpc.publicnode.com' ], polygon: [ 'https://polygon-rpc.com', 'https://rpc.ankr.com/polygon', 'https://polygon-bor-rpc.publicnode.com' ] }, // News Sources (منابع خبری) news: { primary: { name: 'cryptopanic', baseUrl: 'https://cryptopanic.com/api/v1', key: '', needsProxy: false }, fallbacks: [ { name: 'reddit', baseUrl: 'https://www.reddit.com/r/CryptoCurrency', key: '' } ] }, // Sentiment (احساسات) sentiment: { primary: { name: 'alternative.me', baseUrl: 'https://api.alternative.me/fng', key: '', needsProxy: false } }, // Whale Tracking (ردیابی نهنگ) whaleTracking: { primary: { name: 'clankapp', baseUrl: 'https://clankapp.com/api', key: '', needsProxy: false } } }; // ═══════════════════════════════════════════════════════════════════════════════ // API-CLIENT.JS - کلاینت API با مدیریت خطا و fallback // ═══════════════════════════════════════════════════════════════════════════════ class CryptoAPIClient { constructor(config) { this.config = config; this.currentProxyIndex = 0; this.requestCache = new Map(); this.cacheTimeout = 60000; // 1 minute } // استفاده از CORS Proxy async fetchWithProxy(url, options = {}) { const proxies = this.config.corsProxies; for (let i = 0; i < proxies.length; i++) { const proxyUrl = proxies[this.currentProxyIndex] + encodeURIComponent(url); try { console.log(`🔄 Trying proxy ${this.currentProxyIndex + 1}/${proxies.length}`); const response = await fetch(proxyUrl, { ...options, headers: { ...options.headers, 'Origin': window.location.origin, 'x-requested-with': 'XMLHttpRequest' } }); if (response.ok) { const data = await response.json(); // Handle allOrigins response format return data.contents ? JSON.parse(data.contents) : data; } } catch (error) { console.warn(`❌ Proxy ${this.currentProxyIndex + 1} failed:`, error.message); } // Switch to next proxy this.currentProxyIndex = (this.currentProxyIndex + 1) % proxies.length; } throw new Error('All CORS proxies failed'); } // بدون پروکسی async fetchDirect(url, options = {}) { try { const response = await fetch(url, options); if (!response.ok) throw new Error(`HTTP ${response.status}`); return await response.json(); } catch (error) { throw new Error(`Direct fetch failed: ${error.message}`); } } // با cache و fallback async fetchWithFallback(primaryConfig, fallbacks, endpoint, params = {}) { const cacheKey = `${primaryConfig.name}-${endpoint}-${JSON.stringify(params)}`; // Check cache if (this.requestCache.has(cacheKey)) { const cached = this.requestCache.get(cacheKey); if (Date.now() - cached.timestamp < this.cacheTimeout) { console.log('📦 Using cached data'); return cached.data; } } // Try primary try { const data = await this.makeRequest(primaryConfig, endpoint, params); this.requestCache.set(cacheKey, { data, timestamp: Date.now() }); return data; } catch (error) { console.warn('⚠️ Primary failed, trying fallbacks...', error.message); } // Try fallbacks for (const fallback of fallbacks) { try { console.log(`🔄 Trying fallback: ${fallback.name}`); const data = await this.makeRequest(fallback, endpoint, params); this.requestCache.set(cacheKey, { data, timestamp: Date.now() }); return data; } catch (error) { console.warn(`❌ Fallback ${fallback.name} failed:`, error.message); } } throw new Error('All endpoints failed'); } // ساخت درخواست async makeRequest(apiConfig, endpoint, params = {}) { let url = `${apiConfig.baseUrl}${endpoint}`; // Add query params const queryParams = new URLSearchParams(); if (apiConfig.key) { queryParams.append('apikey', apiConfig.key); } Object.entries(params).forEach(([key, value]) => { queryParams.append(key, value); }); if (queryParams.toString()) { url += '?' + queryParams.toString(); } const options = {}; // Add headers if needed if (apiConfig.headerKey && apiConfig.key) { options.headers = { [apiConfig.headerKey]: apiConfig.key }; } // Use proxy if needed if (apiConfig.needsProxy) { return await this.fetchWithProxy(url, options); } else { return await this.fetchDirect(url, options); } } // ═══════════════ SPECIFIC API METHODS ═══════════════ // Get ETH Balance (با fallback) async getEthBalance(address) { const { ethereum } = this.config.explorers; return await this.fetchWithFallback( ethereum.primary, ethereum.fallbacks, '', { module: 'account', action: 'balance', address: address, tag: 'latest' } ); } // Get BTC Price (multi-source) async getBitcoinPrice() { const { marketData } = this.config; try { // Try CoinGecko first (no key needed, no CORS) const data = await this.fetchDirect( `${marketData.primary.baseUrl}/simple/price?ids=bitcoin&vs_currencies=usd,eur` ); return { source: 'CoinGecko', usd: data.bitcoin.usd, eur: data.bitcoin.eur }; } catch (error) { // Fallback to Binance try { const data = await this.fetchDirect( 'https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT' ); return { source: 'Binance', usd: parseFloat(data.price), eur: null }; } catch (err) { throw new Error('All price sources failed'); } } } // Get Fear & Greed Index async getFearGreed() { const url = `${this.config.sentiment.primary.baseUrl}/?limit=1`; const data = await this.fetchDirect(url); return { value: parseInt(data.data[0].value), classification: data.data[0].value_classification, timestamp: new Date(parseInt(data.data[0].timestamp) * 1000) }; } // Get Trending Coins async getTrendingCoins() { const url = `${this.config.marketData.primary.baseUrl}/search/trending`; const data = await this.fetchDirect(url); return data.coins.map(item => ({ id: item.item.id, name: item.item.name, symbol: item.item.symbol, rank: item.item.market_cap_rank, thumb: item.item.thumb })); } // Get Crypto News async getCryptoNews(limit = 10) { const url = `${this.config.news.primary.baseUrl}/posts/?public=true`; const data = await this.fetchDirect(url); return data.results.slice(0, limit).map(post => ({ title: post.title, url: post.url, source: post.source.title, published: new Date(post.published_at) })); } // Get Recent Whale Transactions async getWhaleTransactions() { try { const url = `${this.config.whaleTracking.primary.baseUrl}/whales/recent`; return await this.fetchDirect(url); } catch (error) { console.warn('Whale API not available'); return []; } } // Multi-source price aggregator async getAggregatedPrice(symbol) { const sources = [ { name: 'CoinGecko', fetch: async () => { const data = await this.fetchDirect( `${this.config.marketData.primary.baseUrl}/simple/price?ids=${symbol}&vs_currencies=usd` ); return data[symbol]?.usd; } }, { name: 'Binance', fetch: async () => { const data = await this.fetchDirect( `https://api.binance.com/api/v3/ticker/price?symbol=${symbol.toUpperCase()}USDT` ); return parseFloat(data.price); } }, { name: 'CoinCap', fetch: async () => { const data = await this.fetchDirect( `https://api.coincap.io/v2/assets/${symbol}` ); return parseFloat(data.data.priceUsd); } } ]; const prices = await Promise.allSettled( sources.map(async source => ({ source: source.name, price: await source.fetch() })) ); const successful = prices .filter(p => p.status === 'fulfilled') .map(p => p.value); if (successful.length === 0) { throw new Error('All price sources failed'); } const avgPrice = successful.reduce((sum, p) => sum + p.price, 0) / successful.length; return { symbol, sources: successful, average: avgPrice, spread: Math.max(...successful.map(p => p.price)) - Math.min(...successful.map(p => p.price)) }; } } // ═══════════════════════════════════════════════════════════════════════════════ // USAGE EXAMPLES - مثال‌های استفاده // ═══════════════════════════════════════════════════════════════════════════════ // Initialize const api = new CryptoAPIClient(API_CONFIG); // Example 1: Get Ethereum Balance async function example1() { try { const address = '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb'; const balance = await api.getEthBalance(address); console.log('ETH Balance:', parseInt(balance.result) / 1e18); } catch (error) { console.error('Error:', error.message); } } // Example 2: Get Bitcoin Price from Multiple Sources async function example2() { try { const price = await api.getBitcoinPrice(); console.log(`BTC Price (${price.source}): $${price.usd}`); } catch (error) { console.error('Error:', error.message); } } // Example 3: Get Fear & Greed Index async function example3() { try { const fng = await api.getFearGreed(); console.log(`Fear & Greed: ${fng.value} (${fng.classification})`); } catch (error) { console.error('Error:', error.message); } } // Example 4: Get Trending Coins async function example4() { try { const trending = await api.getTrendingCoins(); console.log('Trending Coins:'); trending.forEach((coin, i) => { console.log(`${i + 1}. ${coin.name} (${coin.symbol})`); }); } catch (error) { console.error('Error:', error.message); } } // Example 5: Get Latest News async function example5() { try { const news = await api.getCryptoNews(5); console.log('Latest News:'); news.forEach((article, i) => { console.log(`${i + 1}. ${article.title} - ${article.source}`); }); } catch (error) { console.error('Error:', error.message); } } // Example 6: Aggregate Price from Multiple Sources async function example6() { try { const priceData = await api.getAggregatedPrice('bitcoin'); console.log('Price Sources:'); priceData.sources.forEach(s => { console.log(`- ${s.source}: $${s.price.toFixed(2)}`); }); console.log(`Average: $${priceData.average.toFixed(2)}`); console.log(`Spread: $${priceData.spread.toFixed(2)}`); } catch (error) { console.error('Error:', error.message); } } // Example 7: Dashboard - All Data async function dashboardExample() { console.log('🚀 Loading Crypto Dashboard...\n'); try { // Price const btcPrice = await api.getBitcoinPrice(); console.log(`💰 BTC: $${btcPrice.usd.toLocaleString()}`); // Fear & Greed const fng = await api.getFearGreed(); console.log(`😱 Fear & Greed: ${fng.value} (${fng.classification})`); // Trending const trending = await api.getTrendingCoins(); console.log(`\n🔥 Trending:`); trending.slice(0, 3).forEach((coin, i) => { console.log(` ${i + 1}. ${coin.name}`); }); // News const news = await api.getCryptoNews(3); console.log(`\n📰 Latest News:`); news.forEach((article, i) => { console.log(` ${i + 1}. ${article.title.substring(0, 50)}...`); }); } catch (error) { console.error('Dashboard Error:', error.message); } } // Run examples console.log('═══════════════════════════════════════'); console.log(' CRYPTO API CLIENT - TEST SUITE'); console.log('═══════════════════════════════════════\n'); // Uncomment to run specific examples: // example1(); // example2(); // example3(); // example4(); // example5(); // example6(); dashboardExample(); ═══════════════════════════════════════════════════════════════════════════════════════ 📝 QUICK REFERENCE - مرجع سریع ═══════════════════════════════════════════════════════════════════════════════════════ BEST FREE APIs (بهترین APIهای رایگان): ───────────────────────────────────────── ✅ PRICES & MARKET DATA: 1. CoinGecko (بدون کلید، بدون CORS) 2. Binance Public API (بدون کلید) 3. CoinCap (بدون کلید) 4. CoinPaprika (بدون کلید) ✅ BLOCK EXPLORERS: 1. Blockchair (1,440 req/day) 2. BlockScout (بدون محدودیت) 3. Public RPC nodes (various) ✅ NEWS: 1. CryptoPanic (بدون کلید) 2. Reddit JSON API (60 req/min) ✅ SENTIMENT: 1. Alternative.me F&G (بدون محدودیت) ✅ WHALE TRACKING: 1. ClankApp (بدون کلید) 2. BitQuery GraphQL (10K/month) ✅ RPC NODES: 1. PublicNode (همه شبکه‌ها) 2. Ankr (عمومی) 3. LlamaNodes (بدون ثبت‌نام) RATE LIMIT STRATEGIES (استراتژی‌های محدودیت): ─────────────────────────────────────────────── 1. کش کردن (Caching): - ذخیره نتایج برای 1-5 دقیقه - استفاده از localStorage برای کش مرورگر 2. چرخش کلید (Key Rotation): - استفاده از چندین کلید API - تعویض خودکار در صورت محدودیت 3. Fallback Chain: - Primary → Fallback1 → Fallback2 - تا 5-10 جایگزین برای هر سرویس 4. Request Queuing: - صف بندی درخواست‌ها - تاخیر بین درخواست‌ها 5. Multi-Source Aggregation: - دریافت از چند منبع همزمان - میانگین گیری نتایج ERROR HANDLING (مدیریت خطا): ────────────────────────────── try { const data = await api.fetchWithFallback(primary, fallbacks, endpoint, params); } catch (error) { if (error.message.includes('rate limit')) { // Switch to fallback } else if (error.message.includes('CORS')) { // Use CORS proxy } else { // Show error to user } } DEPLOYMENT TIPS (نکات استقرار): ───────────────────────────────── 1. Backend Proxy (توصیه می‌شود): - Node.js/Express proxy server - Cloudflare Worker - Vercel Serverless Function 2. Environment Variables: - ذخیره کلیدها در .env - عدم نمایش در کد فرانت‌اند 3. Rate Limiting: - محدودسازی درخواست کاربر - استفاده از Redis برای کنترل 4. Monitoring: - لاگ گرفتن از خطاها - ردیابی استفاده از API ═══════════════════════════════════════════════════════════════════════════════════════ 🔗 USEFUL LINKS - لینک‌های مفید ═══════════════════════════════════════════════════════════════════════════════════════ DOCUMENTATION: • CoinGecko API: https://www.coingecko.com/api/documentation • Etherscan API: https://docs.etherscan.io • BscScan API: https://docs.bscscan.com • TronGrid: https://developers.tron.network • Alchemy: https://docs.alchemy.com • Infura: https://docs.infura.io • The Graph: https://thegraph.com/docs • BitQuery: https://docs.bitquery.io CORS PROXY ALTERNATIVES: • CORS Anywhere: https://github.com/Rob--W/cors-anywhere • AllOrigins: https://github.com/gnuns/allOrigins • CORS.SH: https://cors.sh • Corsfix: https://corsfix.com RPC LISTS: • ChainList: https://chainlist.org • Awesome RPC: https://github.com/arddluma/awesome-list-rpc-nodes-providers TOOLS: • Postman: https://www.postman.com • Insomnia: https://insomnia.rest • GraphiQL: https://graphiql-online.com ═══════════════════════════════════════════════════════════════════════════════════════ ⚠️ IMPORTANT NOTES - نکات مهم ═══════════════════════════════════════════════════════════════════════════════════════ 1. ⚠️ NEVER expose API keys in frontend code - همیشه از backend proxy استفاده کنید - کلیدها را در environment variables ذخیره کنید 2. 🔄 Always implement fallbacks - حداقل 2-3 جایگزین برای هر سرویس - تست منظم fallbackها 3. 💾 Cache responses when possible - صرفه‌جویی در استفاده از API - سرعت بیشتر برای کاربر 4. 📊 Monitor API usage - ردیابی تعداد درخواست‌ها - هشدار قبل از رسیدن به محدودیت 5. 🔐 Secure your endpoints - محدودسازی domain - استفاده از CORS headers - Rate limiting برای کاربران 6. 🌐 Test with and without CORS proxies - برخی APIها CORS را پشتیبانی می‌کنند - استفاده از پروکسی فقط در صورت نیاز 7. 📱 Mobile-friendly implementations - بهینه‌سازی برای شبکه‌های ضعیف - کاهش اندازه درخواست‌ها ═══════════════════════════════════════════════════════════════════════════════════════ END OF CONFIGURATION FILE پایان فایل تنظیمات ═══════════════════════════════════════════════════════════════════════════════════════ Last Updated: October 31, 2025 Version: 2.0 Author: AI Assistant License: Free to use For updates and more resources, check: - GitHub: Search for "awesome-crypto-apis" - Reddit: r/CryptoCurrency, r/ethdev - Discord: Web3 developer communities