Build bots, dashboards, and automated trading systems with the CryptoPulse REST API.
34
EVM chains supported
100+
Labeled whale wallets
<200ms
Average response time
https://cryptopulse.uno/api1. Get your API key from the Dashboard (requires a paid plan: Pro, Trader or API)
2. Make your first request:
curl -H "Authorization: Bearer cpk_your_api_key_here" \ https://cryptopulse.uno/api/whales?chain=ethereum&limit=5
3. Or use JavaScript:
const res = await fetch("https://cryptopulse.uno/api/whales?chain=ethereum", {
headers: { "Authorization": "Bearer cpk_your_api_key_here" }
});
const { transactions } = await res.json();
console.log(`Found ${transactions.length} whale moves`);4. Python example:
import requests
headers = {"Authorization": "Bearer cpk_your_api_key_here"}
r = requests.get("https://cryptopulse.uno/api/wallet/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
params={"multichain": "true"}, headers=headers)
wallet = r.json()
print(f"Score: {wallet['score']['overall']}/100 — {wallet['score']['classification']}")| Plan | Price | Wallet Lookups | API Calls/Day | API Keys | Features |
|---|---|---|---|---|---|
| Free | $0 | 10/day | — | — | Dashboard only |
| Pro | $19/mo | 100/day | — | — | Priority alerts |
| Trader | $49/mo | 500/day | 500/day | 3 keys | Full API access |
| API | $99/mo | 5,000/day | 5,000/day | 10 keys | Full API + webhooks |
/api/whalesHistory depth by plan: 7d free · 30d Pro · 90d Trader/API. Deeper requests return 403 with your ceiling, never silently truncated.Whale transactions across chains — live, historical, and paginated
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| chain | string | No | ethereum | Chain: ethereum, base, bsc, arbitrum, polygon, optimism, avalanche... or 'all' |
| limit | number | No | 20 | Max results (1-1000) |
| offset | number | No | 0 | Pagination offset. Response carries total + hasMore. |
| period | string | No | 24h | 1h, 6h, 24h, 7d, 30d, 90d — or 'live' for a fresh block scan (single chain) |
| from | string | No | — | Range start: unix seconds or ISO-8601 (2026-06-01). Requires 'to'-free pairing rules; overrides period. |
| to | string | No | — | Range end: unix seconds or ISO-8601. Requires 'from'. |
curl -H "Authorization: Bearer YOUR_API_KEY" "https://cryptopulse.uno/api/whales?chain=all&period=90d&limit=100&offset=0"
{
"chain": "ethereum",
"count": 5,
"transactions": [
{
"hash": "0xabc...def",
"chain": "ethereum",
"from": "0x28C6...d60",
"to": "0xd8dA...045",
"value": "500.0000",
"valueUSD": 1750000,
"token": "ETH",
"tokenSymbol": "ETH",
"type": "transfer",
"fromLabel": "Binance Hot Wallet",
"toLabel": "vitalik.eth",
"timestamp": 1708886400,
"blockNumber": 19320000
}
],
"updatedAt": "2026-02-28T15:30:00Z"
}/api/wallet/:addressFree (10/day) / Pro (100/day) / Trader (500/day) / API (5000/day)Scan wallet — balance, tokens, transactions, intelligence score
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| address | string | Yes | — | EVM wallet address (0x...) |
| chain | string | No | ethereum | Single chain to query |
| multichain | boolean | No | false | Scan all 34 chains in parallel |
curl -H "Authorization: Bearer YOUR_API_KEY" https://cryptopulse.uno/api/wallet/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?multichain=true
{
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"chain": "ethereum",
"label": "vitalik.eth",
"tags": ["🐋 Whale", "Ethereum Foundation"],
"balance": "1234.5678",
"balanceUSD": 4320987.30,
"score": {
"overall": 92,
"tier": "🐋",
"classification": "Whale",
"breakdown": { "age": 25, "activity": 22, "diversity": 20, "volume": 25 },
"riskFlags": [],
"insights": ["Top 0.01% wallet", "Active DeFi user"]
},
"stats": {
"totalTxCount": 1847,
"uniqueTokensTraded": 89,
"totalValueMovedUSD": 890000000,
"firstTxDate": "2015-07-30",
"lastTxDate": "2026-02-28"
},
"tokenHoldings": [...],
"recentTokenTransfers": [...],
"connections": { "exchanges": [...], "defi": [...], "frequentContacts": [...] }
}/api/marketFree / All plansMarket overview — prices, market cap, fear & greed index
curl -H "Authorization: Bearer YOUR_API_KEY" https://cryptopulse.uno/api/market
{
"overview": {
"totalMarketCap": 3200000000000,
"totalVolume24h": 98000000000,
"btcDominance": 52.3,
"fearGreedIndex": 72,
"fearGreedLabel": "Greed"
},
"prices": [
{ "id": "bitcoin", "symbol": "btc", "price": 95420, "change24h": 2.1, "marketCap": 1890000000000 },
{ "id": "ethereum", "symbol": "eth", "price": 3520, "change24h": -0.5, "marketCap": 423000000000 }
]
}/api/chainsFree / All plansList all 34 supported chains with RPC status
curl https://cryptopulse.uno/api/chains
{
"chains": [
{ "id": "ethereum", "name": "Ethereum", "symbol": "ETH", "explorerUrl": "https://etherscan.io" },
{ "id": "base", "name": "Base", "symbol": "ETH", "explorerUrl": "https://basescan.org" },
...
],
"total": 34
}/api/keysTrader / API planList your API keys (requires auth cookie)
# Use dashboard UI to manage keys
{ "keys": [{ "id": "...", "keyPrefix": "cpk_a1b2c3d4", "name": "My Bot", "callsToday": 42, "callsTotal": 1337, "createdAt": "..." }] }/api/keysTrader / API planCreate a new API key
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| name | string | No | Default | Label for the key |
curl -X POST -H "Content-Type: application/json" -d '{"name":"My Bot"}' https://cryptopulse.uno/api/keys{ "key": "cpk_abc123...full_key", "id": "...", "prefix": "cpk_abc123..", "name": "My Bot", "message": "Save this key — it won't be shown again!" }/api/webhooks/subscriptionsTrader / API planList your webhook endpoints (secrets are masked)
curl -H "Authorization: Bearer YOUR_API_KEY" https://cryptopulse.uno/api/webhooks/subscriptions
{
"endpoints": [
{
"id": "3f9a...",
"url": "https://your-app.com/hooks/cryptopulse",
"events": ["whale_move", "wallet_watch"],
"active": true,
"secretPreview": "whsec_****a1b2",
"consecutiveFailures": 0,
"lastSuccessAt": "2026-08-25T12:00:00Z"
}
]
}/api/webhooks/subscriptionsTrader / API plan (max 5 endpoints)Register an HTTPS endpoint for push events. We POST a signed JSON payload per matching alert. Verify X-CryptoPulse-Signature: it is sha256=HMAC_SHA256(secret, `${timestamp}.${rawBody}`) using the X-CryptoPulse-Timestamp header. The secret is returned ONCE on create. Endpoints auto-disable after 10 consecutive failures. Delivery follows the alert pipeline — expect minutes, not milliseconds.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| url | string | Yes | — | Public HTTPS URL on port 443. Private/loopback/metadata addresses are rejected. |
| events | array | No | both | Any of: whale_move, wallet_watch |
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"url":"https://your-app.com/hooks/cryptopulse","events":["whale_move"]}' https://cryptopulse.uno/api/webhooks/subscriptions{
"id": "3f9a...",
"url": "https://your-app.com/hooks/cryptopulse",
"events": ["whale_move"],
"secret": "whsec_... // shown once — store it now",
"signatureNote": "X-CryptoPulse-Signature: sha256=HMAC_SHA256(secret, timestamp + '.' + rawBody)"
}| Code | Meaning |
|---|---|
| 200 | Success |
| 400 | Bad request — invalid parameters |
| 401 | Unauthorized — invalid or missing API key |
| 403 | Forbidden — plan doesn't include this feature |
| 429 | Rate limit reached — upgrade plan or wait for daily reset |
| 500 | Server error |
Get API access with a Trader ($49/mo) or API ($99/mo) plan. Start building in minutes.