{"info":{"name":"Sushilens API","description":"Robinhood Chain API. Set the apiKey variable to your key.","schema":"https://schema.getpostman.com/json/collection/v2.1.0/collection.json"},"auth":{"type":"apikey","apikey":[{"key":"key","value":"x-api-key"},{"key":"value","value":"{{apiKey}}"},{"key":"in","value":"header"}]},"variable":[{"key":"baseUrl","value":"https://www.sushilens.work/api"},{"key":"apiKey","value":""}],"item":[{"name":"Blockchain Data API","description":"Blocks, transactions, receipts, native balances and smart contract introspection.","item":[{"name":"Latest block","request":{"method":"GET","description":"The current head block with its transaction hashes.","header":[],"url":{"raw":"{{baseUrl}}/v1/blocks/latest","host":["{{baseUrl}}"],"path":["v1","blocks","latest"],"variable":[],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Block by number or hash","request":{"method":"GET","description":"Fetch a block by number, hash, or the tags latest / safe / finalized.","header":[],"url":{"raw":"{{baseUrl}}/v1/blocks/:block","host":["{{baseUrl}}"],"path":["v1","blocks",":block"],"variable":[{"key":"block","value":"finalized","description":"Block number, 32-byte block hash, or a tag."}],"query":[{"key":"transactions","value":"hashes","description":"Return transaction hashes or full transaction objects.","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Transaction + receipt","request":{"method":"GET","description":"Transaction, its receipt, execution status and confirmation count. Pending transactions return status \"pending\".","header":[],"url":{"raw":"{{baseUrl}}/v1/transactions/:hash","host":["{{baseUrl}}"],"path":["v1","transactions",":hash"],"variable":[{"key":"hash","value":"0x1721f9171b16c6219c05321b6bc7a7082c318fb25147a639bfc2ce6ec9121ecc","description":"Transaction hash."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Native balance","request":{"method":"GET","description":"ETH balance of any address, optionally at a historical block.","header":[],"url":{"raw":"{{baseUrl}}/v1/addresses/:address/balance","host":["{{baseUrl}}"],"path":["v1","addresses",":address","balance"],"variable":[{"key":"address","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Account address."}],"query":[{"key":"block","value":"","description":"Historical block number (archive nodes only).","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Smart contract info","request":{"method":"GET","description":"Bytecode size and hash, EIP-1967 proxy slots, and ERC-165 interface detection.","header":[],"url":{"raw":"{{baseUrl}}/v1/contracts/:address","host":["{{baseUrl}}"],"path":["v1","contracts",":address"],"variable":[{"key":"address","value":"0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3","description":"Contract address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"Token API","description":"ERC-20 metadata, balances, transfer history and holder lists.","item":[{"name":"Token metadata","request":{"method":"GET","description":"ERC-20 name, symbol, decimals and total supply read directly from the contract.","header":[],"url":{"raw":"{{baseUrl}}/v1/tokens/:address","host":["{{baseUrl}}"],"path":["v1","tokens",":address"],"variable":[{"key":"address","value":"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73","description":"ERC-20 contract address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Token balance","request":{"method":"GET","description":"ERC-20 balance of one owner.","header":[],"url":{"raw":"{{baseUrl}}/v1/tokens/:address/balances/:owner","host":["{{baseUrl}}"],"path":["v1","tokens",":address","balances",":owner"],"variable":[{"key":"address","value":"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73","description":"ERC-20 contract address."},{"key":"owner","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Holder address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Batch token balances","request":{"method":"POST","description":"Balances of up to 50 ERC-20 tokens for one owner in a single request.","header":[{"key":"content-type","value":"application/json"}],"url":{"raw":"{{baseUrl}}/v1/tokens/balances","host":["{{baseUrl}}"],"path":["v1","tokens","balances"],"variable":[],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]},"body":{"mode":"raw","raw":"{\n  \"owner\": \"0xeF63781a022e0C219cb6521c8222150DeD82981d\",\n  \"tokens\": [\n    \"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73\",\n    \"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168\"\n  ]\n}","options":{"raw":{"language":"json"}}}}},{"name":"Token transfers","request":{"method":"GET","description":"ERC-20 Transfer events read from chain logs for a bounded block range.","header":[],"url":{"raw":"{{baseUrl}}/v1/tokens/:address/transfers","host":["{{baseUrl}}"],"path":["v1","tokens",":address","transfers"],"variable":[{"key":"address","value":"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73","description":"ERC-20 contract address."}],"query":[{"key":"fromBlock","value":"","description":"First block to scan. When omitted the widest range the RPC provider accepts is used, and the response reports what was scanned (fromBlock, toBlock, rangeNarrowed).","disabled":true},{"key":"toBlock","value":"","description":"Last block to scan. Defaults to the head block.","disabled":true},{"key":"limit","value":"100","description":"Maximum events returned (newest first).","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Token holders","request":{"method":"GET","description":"Holder list with balances, served from the Robinhood Chain explorer index.","header":[],"url":{"raw":"{{baseUrl}}/v1/tokens/:address/holders","host":["{{baseUrl}}"],"path":["v1","tokens",":address","holders"],"variable":[{"key":"address","value":"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73","description":"ERC-20 contract address."}],"query":[{"key":"cursor","value":"","description":"Opaque pagination cursor from a previous response.","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"Wallet API","description":"Wallet overview, transaction history, token portfolio and NFT holdings.","item":[{"name":"Wallet overview","request":{"method":"GET","description":"ETH balance, nonce (transaction count) and whether the address is a contract.","header":[],"url":{"raw":"{{baseUrl}}/v1/wallets/:address","host":["{{baseUrl}}"],"path":["v1","wallets",":address"],"variable":[{"key":"address","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Wallet address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Transaction history","request":{"method":"GET","description":"Paginated transaction history from the explorer index.","header":[],"url":{"raw":"{{baseUrl}}/v1/wallets/:address/transactions","host":["{{baseUrl}}"],"path":["v1","wallets",":address","transactions"],"variable":[{"key":"address","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Wallet address."}],"query":[{"key":"cursor","value":"","description":"Pagination cursor.","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Token portfolio","request":{"method":"GET","description":"ETH balance plus every ERC-20 balance indexed for the wallet. No prices are invented: only on-chain quantities.","header":[],"url":{"raw":"{{baseUrl}}/v1/wallets/:address/portfolio","host":["{{baseUrl}}"],"path":["v1","wallets",":address","portfolio"],"variable":[{"key":"address","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Wallet address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"NFT holdings","request":{"method":"GET","description":"NFTs (ERC-721 / ERC-1155) held by the wallet, from the explorer index.","header":[],"url":{"raw":"{{baseUrl}}/v1/wallets/:address/nfts","host":["{{baseUrl}}"],"path":["v1","wallets",":address","nfts"],"variable":[{"key":"address","value":"0xeF63781a022e0C219cb6521c8222150DeD82981d","description":"Wallet address."}],"query":[{"key":"cursor","value":"","description":"Pagination cursor.","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"DeFi API","description":"Uniswap V2-style pairs and V3-style pools: reserves, pricing and swap events.","item":[{"name":"V2 pair (liquidity pool)","request":{"method":"GET","description":"Uniswap V2-compatible pair: tokens, reserves, LP supply and spot prices.","header":[],"url":{"raw":"{{baseUrl}}/v1/defi/v2/pools/:pool","host":["{{baseUrl}}"],"path":["v1","defi","v2","pools",":pool"],"variable":[{"key":"pool","value":"0x8803c117ccae7B5146297876c2A25DF135141C4d","description":"Pair contract address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"V3 pool (concentrated liquidity)","request":{"method":"GET","description":"Uniswap V3-compatible pool: tokens, fee tier, tick, sqrtPriceX96, active liquidity and spot price.","header":[],"url":{"raw":"{{baseUrl}}/v1/defi/v3/pools/:pool","host":["{{baseUrl}}"],"path":["v1","defi","v3","pools",":pool"],"variable":[{"key":"pool","value":"0x69BfaF19C9f377BB306a89aEd9F6B07e2c1a8d9a","description":"Pool contract address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Swap events","request":{"method":"GET","description":"Swap events of a V2 pair or V3 pool from chain logs for a bounded block range.","header":[],"url":{"raw":"{{baseUrl}}/v1/defi/:version/pools/:pool/swaps","host":["{{baseUrl}}"],"path":["v1","defi",":version","pools",":pool","swaps"],"variable":[{"key":"version","value":"v2","description":"Pool protocol version."},{"key":"pool","value":"0x8803c117ccae7B5146297876c2A25DF135141C4d","description":"Pair / pool address."}],"query":[{"key":"fromBlock","value":"","description":"First block to scan. When omitted the widest range the RPC provider accepts is used, and the response reports what was scanned (fromBlock, toBlock, rangeNarrowed).","disabled":true},{"key":"toBlock","value":"","description":"Last block to scan. Defaults to the head block.","disabled":true},{"key":"limit","value":"100","description":"Maximum events returned (newest first).","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Token price from a pool","request":{"method":"GET","description":"On-chain spot price of a token derived from a specific V2 pair or V3 pool you choose. No off-chain price feeds.","header":[],"url":{"raw":"{{baseUrl}}/v1/defi/price","host":["{{baseUrl}}"],"path":["v1","defi","price"],"variable":[],"query":[{"key":"pool","value":"0x8803c117ccae7B5146297876c2A25DF135141C4d","description":"Pair / pool address.","disabled":false},{"key":"version","value":"v2","description":"Pool version.","disabled":false},{"key":"base","value":"0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73","description":"Token to price (must be one of the pool tokens).","disabled":false},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"NFT API","description":"ERC-721 / ERC-1155 collections, token ownership, token URIs and transfers.","item":[{"name":"NFT collection","request":{"method":"GET","description":"Standard detection (ERC-721 / ERC-1155 via ERC-165), name, symbol and total supply when exposed.","header":[],"url":{"raw":"{{baseUrl}}/v1/nfts/:contract","host":["{{baseUrl}}"],"path":["v1","nfts",":contract"],"variable":[{"key":"contract","value":"0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3","description":"Collection contract address."}],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"NFT token","request":{"method":"GET","description":"Owner and token URI of an ERC-721 token, or the URI of an ERC-1155 token. Optionally checks an ERC-1155 holder balance.","header":[],"url":{"raw":"{{baseUrl}}/v1/nfts/:contract/:tokenId","host":["{{baseUrl}}"],"path":["v1","nfts",":contract",":tokenId"],"variable":[{"key":"contract","value":"0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3","description":"Collection contract address."},{"key":"tokenId","value":"1545057","description":"Token ID."}],"query":[{"key":"holder","value":"","description":"ERC-1155 only: return this holder's balance.","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"NFT transfers","request":{"method":"GET","description":"ERC-721 Transfer events from chain logs for a bounded block range.","header":[],"url":{"raw":"{{baseUrl}}/v1/nfts/:contract/transfers","host":["{{baseUrl}}"],"path":["v1","nfts",":contract","transfers"],"variable":[{"key":"contract","value":"0x73991a25C818Bf1f1128dEAaB1492D45638DE0D3","description":"ERC-721 contract address."}],"query":[{"key":"fromBlock","value":"","description":"First block to scan. When omitted the widest range the RPC provider accepts is used, and the response reports what was scanned (fromBlock, toBlock, rangeNarrowed).","disabled":true},{"key":"toBlock","value":"","description":"Last block to scan. Defaults to the head block.","disabled":true},{"key":"limit","value":"100","description":"Maximum events returned (newest first).","disabled":true},{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"Network API","description":"Chain health, head block, gas pricing and fee market data.","item":[{"name":"Network status","request":{"method":"GET","description":"Chain ID, head block, block age and the RPC provider currently serving requests.","header":[],"url":{"raw":"{{baseUrl}}/v1/network/status","host":["{{baseUrl}}"],"path":["v1","network","status"],"variable":[],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}},{"name":"Gas prices","request":{"method":"GET","description":"Current gas price, base fee and EIP-1559 fee estimates (all values in wei).","header":[],"url":{"raw":"{{baseUrl}}/v1/network/gas","host":["{{baseUrl}}"],"path":["v1","network","gas"],"variable":[],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]}}}]},{"name":"JSON-RPC Proxy","description":"Authenticated, metered, read-only JSON-RPC with automatic provider failover.","item":[{"name":"JSON-RPC (read-only)","request":{"method":"POST","description":"Standard JSON-RPC 2.0 request body. Read-only methods only: eth_blockNumber, eth_chainId, eth_call, eth_estimateGas, eth_gasPrice, eth_getBalance, eth_getBlockByNumber, eth_getBlockByHash, eth_getCode, eth_getLogs, eth_getStorageAt, eth_getTransactionByHash, eth_getTransactionCount, eth_getTransactionReceipt, eth_feeHistory, eth_maxPriorityFeePerGas, net_version.","header":[{"key":"content-type","value":"application/json"}],"url":{"raw":"{{baseUrl}}/v1/rpc","host":["{{baseUrl}}"],"path":["v1","rpc"],"variable":[],"query":[{"key":"network","value":"mainnet","description":"mainnet or testnet","disabled":true}]},"body":{"mode":"raw","raw":"{\n  \"method\": \"eth_blockNumber\",\n  \"params\": []\n}","options":{"raw":{"language":"json"}}}}}]}]}