Files
zeekayandHanzo Dev c1996cacc8
Hanzo CI/CD / cicd (push) Successful in 8m30s
CI/CD / cicd (push) Successful in 8m30s
api: read Hanzo KV from KV_URL; a KV outage no longer fails requests
The cache client is now the KV client (core/cache/kv.py, kv_client),
configured by KV_URL. rate_limit_check allows the request and logs when KV
is unreachable, and the RPC cache treats an outage as a miss. cloud_billing
reads KV directly instead of a missing usage_tracker.redis attribute; the
NFT refresh enqueues through an arq pool.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-23 00:29:49 -07:00

55 lines
1.4 KiB
Markdown

# Hanzo Nodes API
Multi-chain blockchain infrastructure platform providing RPC, APIs, WebSockets, Webhooks, and ERC-4337 bundling.
## Features
- **Multi-Chain RPC**: 100+ EVM chains with load balancing
- **Token API**: ERC-20 balances, transfers, prices
- **NFT API**: ERC-721/1155 ownership, metadata, transfers
- **Wallet API**: Portfolio tracking, activity history
- **WebSocket Subscriptions**: Real-time blockchain events
- **Webhooks**: Event notifications with delivery tracking
- **ERC-4337 Bundler**: Account abstraction with gasless transactions
- **Gas API**: Real-time gas estimates and EIP-1559 data
## Quick Start
```bash
# Start dependencies
docker compose up -d postgres redis clickhouse
# Run API locally
uv run uvicorn bootnode.main:app --reload
# Or with Docker
docker compose up -d
```
## API Endpoints
- `GET /health` - Health check
- `POST /v1/rpc/{chain}/{network}` - JSON-RPC proxy
- `GET /v1/tokens/{chain}/balance/{address}` - Token balances
- `GET /v1/nfts/{chain}/owner/{address}` - NFT ownership
- `POST /v1/webhooks` - Create webhook
- `WS /v1/ws/{chain}/{network}` - WebSocket subscriptions
## Environment Variables
```bash
DATABASE_URL=postgresql+asyncpg://...
KV_URL=redis://...
DATASTORE_URL=clickhouse://...
JWT_SECRET=...
```
## Documentation
- API Docs: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
## License
BSD-3-Clause