# SiteCheck EVM Contract Event Logs

> SiteCheck EVM Contract Event Logs is a paid API for AI agents from api.sitecheck-api.workers.dev, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-30).

Fetches raw event logs emitted by an EVM smart contract on a specified chain, optionally filtered by event topic signature

## Facts

- Endpoint: GET https://api.sitecheck-api.workers.dev/api/evm/logs?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/sitecheck-evm-contract-event-logs-d6cc9af2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-zFoFZbgMJyoI3GzW2e_Q

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 sitecheck-evm-contract-event-logs-d6cc9af2
```

Example prompt: Pull the last 200 blocks of Transfer event logs for the USDC contract at 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 on Base, filtering by topic0 Transfer(address,address,uint256).

## When to prefer this

Choose this endpoint when you need raw EVM event log data for a specific contract on a supported L1/L2 chain (Base, Ethereum, Arbitrum, Optimism, Polygon) and want to filter by event type via topic0. It is pay-per-call with no API key setup, making it ideal for agent workflows that need occasional on-chain event lookups without provisioning dedicated RPC infrastructure. Prefer this over full blockchain node queries when you need a simple, affordable REST call to retrieve recent contract events.

## Known failure modes

- Missing required 'contract' query parameter returns an error
- Invalid or malformed contract address (not 0x-prefixed hex) causes a bad request error
- Unsupported chain name returns an error; only base, ethereum, arbitrum, optimism, polygon are accepted
- Blocks value exceeding 5000 is rejected or capped
- No logs found returns an empty logs array with count 0
- RPC node timeout or unavailability may cause a service error
- Malformed topic0 (invalid event signature or non-32-byte hash) may return no results or an error

## How this service works

Event logs of a contract over recent blocks (default 1,000, max 5,000), newest first, max 100: block, transaction hash, topics and data. topic0 takes an event signature such as Transfer(address,address,uint256) or a 32-byte hash. Public nodes refuse very large results: narrow the range or add topic0.

## Output

Returns a JSON object containing an array of event log entries, each with block number, transaction hash, log index, topics array, and raw data hex. Also includes metadata: chain name, total count, block window (fromBlock/toBlock), the contract address queried, topic0 filter used, timestamp, a truncated flag if results were capped, and data source attribution.

## 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"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "contract"
     ],
     "properties": {
      "chain": {
       "type": "string",
       "description": "base (default), ethereum, arbitrum, optimism or polygon"
      },
      "blocks": {
       "type": "string",
       "description": "Blocks to search back from the latest (max 5000)"
      },
      "topic0": {
       "type": "string",
       "description": "Event signature, e.g. Transfer(address,address,uint256), or a 32-byte hash"
      },
      "contract": {
       "type": "string",
       "description": "Contract address, 0x…"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "logs": [
   {
    "data": "0x00000000000000000000000000000000000000000000000000000000002ca077",
    "block": 52582002,
    "topics": [
     "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
     "0x0000000000000000000000002610bbdd829f00fef0acf572a610391aa76f549c"
    ],
    "txHash": "0x1eee8e31f014e26b5de018b0b958261ad564ff8efc81caf64366b38fc5fc30c2",
    "logIndex": 1
   },
   {
    "data": "0x00000000000000000000000000000000000000000000000000000000002ca077",
    "block": 52582002,
    "topics": [
     "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
     "0x000000000000000000000000fdf682f51fe81aa4898f0ae2163d8a55c127fbc7"
    ],
    "txHash": "0x1eee8e31f014e26b5de018b0b958261ad564ff8efc81caf64366b38fc5fc30c2",
    "logIndex": 3
   }
  ],
  "chain": "base",
  "count": 100,
  "source": "https://base-rpc.publicnode.com (eth_blockNumber, eth_getLogs)",
  "topic0": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
  "window": {
   "blocks": 5,
   "toBlock": 52582006,
   "fromBlock": 52582002
  },
  "contract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "checkedAt": "2026-10-14T04:49:19.284Z",
  "truncated": true,
  "disclaimer": "Information only, not financial advice."
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/sitecheck-evm-contract-event-logs-d6cc9af2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.sitecheck-api.workers.dev](https://www.zero.xyz/host/api.sitecheck-api.workers.dev/llms.txt)
