# Base Contract Generic Read (auditor-x402)

> Base Contract Generic Read (auditor-x402) is a paid API for AI agents from auditor-x402.onrender.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-30).

Executes any read-only (view) function on any Base contract by accepting a contract address and raw hex calldata, returning raw bytes plus best-effort decoded values.

## Facts

- Endpoint: POST https://auditor-x402.onrender.com/api/contract-read?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/base-contract-generic-read-auditor-x402-2f74fefb
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_PyaCYR3D_FiQwVqENasqm

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 base-contract-generic-read-auditor-x402-2f74fefb -d '<json body>'
```

Example prompt: What does the `owner()` function return for the contract at 0xAbCd...1234 on Base? Call it with selector 0x8da5cb5b and decode the result.

## When to prefer this

Choose this endpoint when you need to call any arbitrary view function on a Base contract that is not covered by the dedicated tools (e.g. not ERC-20 balance, not Aave rates, not Uniswap pricing). It is the Swiss-army-knife fallback for any read-only on-chain call — ideal for non-standard getter functions, custom governance contracts, or any function you can express as a 4-byte selector plus ABI-encoded args.

## Known failure modes

- Invalid contract address returns an error or empty bytes
- Wrong or mismatched calldata selector causes a revert or garbled decode
- Contract not deployed on Base returns execution error
- Encoding mismatch in ABI arguments causes revert
- Service temporarily unavailable (Render cold-start delay)
- Payment of 0.003 USDC required; missing payment causes 402 rejection

## How this service works

Generic read-only call to any contract on Base: provide an address and hex calldata (4-byte selector, e.g. 0x18160ddd = totalSupply, optionally followed by ABI-encoded args) and get the raw return data plus best-effort uint/address/bool/string decoding. Read-only (never sends a transaction). Use this for arbitrary view functions not covered by a dedicated tool.

## Output

Returns the raw hex return data from the contract call, along with best-effort decoded values: uint256, address, bool, and string interpretations of the bytes, so the agent can use whichever type fits the function's actual return type.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "data": {
   "type": "string",
   "description": "Hex calldata starting with a 4-byte function selector (e.g. \"0x18160ddd\")"
  },
  "address": {
   "type": "string",
   "description": "Contract address (0x...) on Base"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-contract-generic-read-auditor-x402-2f74fefb/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from auditor-x402.onrender.com](https://www.zero.xyz/host/auditor-x402.onrender.com/llms.txt)
