Build on BaniPool's multichain DeFi data
API v1 gives access to pools, tokens, wallet balances & positions, pre-simulated transaction quotes and plans, and real-time events. API keys are bound to the owner wallet; transactions are still signed by the user's wallet.
Get started in 3 steps
- Sign in with wallet
Connect a wallet and sign the login message (no gas, no transaction permission).
- Create an API key
Choose only the scopes you need (e.g. data:read). The secret is shown only once — store it on your server.
- Call the API
Send the x-api-key header. Responses use a data/meta shape; amounts are full-precision strings.
curl -s "https://banipool.com/api/v1/pools?chain=base&limit=5" \
-H "x-api-key: $BANIPOOL_API_KEY" | jq '.data[] | {id, tvlUsd, feeAprPercent}'Tools & references
API keys & usageSign in with wallet
Create a key per app, choose scopes, monitor the daily quota, and revoke at any time.
WebhookSign in with wallet
Receive transaction & position events on your server, signed with HMAC-SHA256, with delivery status.
Documentation
A complete guide to every feature, fees, wallet login, the transaction flow and code samples.
API reference
Every v1 endpoint from the running OpenAPI contract, with authentication & scopes.
Realtime: SSE & WebSocket
Account events via Server-Sent Events and live on-chain data via the network WSS RPC.
Smart contracts
BaniPool and official protocol contract addresses per network, to verify before signing.
Regular reads cost 1 unit, balances/positions 5, quotes/plans 10. Check the X-Quota-Remaining header; HTTP 429 carries Retry-After.
Never put API keys in frontend code or URLs. The server never signs transactions; always show the details to users.