# EVM Event Logs Reader

> EVM Event Logs Reader is a paid API for AI agents from payai.agentstools.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-12).

Fetches and decodes recent event logs from a smart contract on an EVM-compatible blockchain over a configurable block window

## Facts

- Endpoint: GET https://payai.agentstools.dev/evm/logs?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/evm-event-logs-reader-516146df
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6lMZidTIAuLO4xLVUW-Go

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability evm-event-logs-reader-516146df
```

Example prompt: Pull the last 500 blocks of Transfer events from the contract 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on Ethereum and decode them using the signature Transfer(address,address,uint256).

## When to prefer this

Use this endpoint when you need to read historical or recent on-chain event logs from a specific smart contract on a major EVM network (Base, Ethereum, Arbitrum, Optimism, Polygon, BNB), especially when you want automatic decoding via event signature or ABI. Prefer this over raw RPC calls when you want decoded fields returned alongside raw logs without manual ABI management.

## Known failure modes

- Invalid contract address format returns an error
- Unsupported network name returns a validation error
- Block window exceeding 10000 blocks is rejected
- Topic0 hash in wrong format (not 0x + 64 hex) fails validation
- No logs found in the window returns an empty list
- Contract has no verified ABI and topic cannot be resolved via 4byte — raw logs returned without decoding
- Rate limit or payment failure returns a 402 error

## How this service works

Read a contract's recent event logs on an EVM network over a bounded block window and decode them. Logs are decoded from an event signature you supply, or from the contract's verified ABI, or by resolving the topic to a name via 4byte. Raw logs are always returned; decoded fields are added where possible.

## Output

Returns a list of raw event log objects (block number, transaction hash, log index, topics, data) with decoded fields appended where possible — either from the supplied event signature, the contract's verified ABI, or 4byte topic resolution. Both raw and decoded representations are included.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "address"
     ],
     "properties": {
      "limit": {
       "type": "integer",
       "maximum": 200,
       "minimum": 1,
       "description": "Max decoded logs to return (default 200)"
      },
      "blocks": {
       "type": "integer",
       "maximum": 10000,
       "minimum": 1,
       "description": "Look-back window in blocks (default 2000)"
      },
      "topic0": {
       "type": "string",
       "description": "Event topic0 hash to filter by (alternative to signature), 0x + 64 hex"
      },
      "address": {
       "type": "string",
       "description": "Contract address, 0x + 40 hex"
      },
      "network": {
       "enum": [
        "base",
        "ethereum",
        "arbitrum",
        "optimism",
        "polygon",
        "bnb"
       ],
       "type": "string",
       "description": "EVM network (default base)"
      },
      "signature": {
       "type": "string",
       "description": "Event signature to filter and decode by, e.g. Transfer(address,address,uint256)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/evm-event-logs-reader-516146df/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from payai.agentstools.dev](https://www.zero.xyz/host/payai.agentstools.dev/llms.txt)
