Register any smart contract on any EVM-compatible chain and automatically index historical and real-time events. Query, stream, and deliver via webhooks.
evmindexer exposes a standard Agent Card following the Google A2A protocol. Any compatible AI agent can discover capabilities, authentication schemes, and available skills automatically — no manual integration needed.
Fetch indexed on-chain events by chain, contract, event name, block range, or decoded args. Paginated results with x402 pay-per-use billing.
Register listeners for any contract on any EVM chain. Auto-detects indexed params, backfills history, and switches to real-time WebSocket.
Receive real-time event notifications scoped by chain, contract, event name, or arg values. Batched per block for efficiency.
Full access. Pass Authorization: Bearer <secret> or X-Admin-Secret.
Event queries billed in USDC on Base. Call GET /events/quote for pricing, then pay and include X-Payment.
A single service handles the full lifecycle — from historical backfill to live streaming to webhook delivery.
BSC, Ethereum, Base, Arbitrum — any chain with an EVM-compatible RPC. Configure via environment variables.
Backfills from a given block via eth_getLogs, then switches to real-time WebSocket subscription with zero gap.
Automatically detects which event parameters are indexed from on-chain logs at registration time.
Subscribe by chain, contract, event name, or arg values. All events from a block are batched into one HTTP call.
Create, update, and delete listeners and webhooks at runtime. No restart required. Full Swagger UI at /docs.
Event queries priced per result in USDC on Base. Get a free quote, pay, retrieve data. Admin accounts bypass payment.
All endpoints are available at https://evmindexer.com. Interactive docs at /docs.
| Method | Path | Description | Auth |
|---|---|---|---|
| Loading… | |||
Admin endpoints require Authorization: Bearer <ADMIN_SECRET> or X-Admin-Secret: <secret>. x402 endpoints require a USDC payment on Base — see /events/quote.
Register a listener and start receiving events in under a minute.
# Register a listener on BSC curl -X POST https://evmindexer.com/listeners \ -H "Authorization: Bearer $ADMIN_SECRET" \ -H "Content-Type: application/json" \ -d '{ "chain_id": 56, "contract_address": "0x...", "from_block": 47000000, "events": ["Transfer(address indexed from, address indexed to, uint256 value)"], "historical_sync": true }' # Get a quote for querying events curl "https://evmindexer.com/events/quote?chain_id=56&event_name=Transfer&limit=100" # Fetch events (admin) curl "https://evmindexer.com/events?chain_id=56&event_name=Transfer&limit=100" \ -H "Authorization: Bearer $ADMIN_SECRET"