# Base Mainnet eth_call (Raw)

> Base Mainnet eth_call (Raw) is a paid API for AI agents from x402.agentindex.world, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-11).

Executes a generic read-only eth_call against any Base mainnet smart contract, returning raw ABI-encoded return data.

## Facts

- Endpoint: GET https://x402.agentindex.world/base/call?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-mainnet-eth-call-raw-d06c5652
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_yaJyR4TaJ7Sqj1JfEyu_z

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-mainnet-eth-call-raw-d06c5652
```

Example prompt: Call the Base mainnet contract at 0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA with calldata 0x18160ddd to read its totalSupply — I just need the raw hex return value.

## When to prefer this

Use this endpoint when you need to call any arbitrary Base mainnet smart contract with custom calldata and want the raw ABI-encoded response back, without setting up your own Base RPC node or SDK. Ideal for advanced use cases where you already know the ABI and calldata encoding, or when the sibling base-allowance and base-basename endpoints don't cover your specific function. For higher-level operations like ERC20 allowances or Basename resolution, prefer the purpose-built sibling endpoints.

## Known failure modes

- Invalid or non-contract 'to' address returns empty data or reverts
- Malformed calldata causes execution revert, returning an error message
- Contract execution reverts (e.g. require/revert) — revert reason may be returned as hex
- Non-hex or incorrectly formatted 'data' field causes a 400/422 validation error
- Contract not deployed on Base mainnet returns empty response
- Network congestion or RPC timeout may cause delays or 5xx errors

## How this service works

Generic read-only eth_call against any Base mainnet contract - pass raw calldata, get the raw return data back.

## Output

A hex-encoded raw return value from the Base mainnet eth_call, representing the ABI-encoded output of the contract function called. The agent receives the raw bytes and is responsible for decoding them using the contract's ABI.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "to": {
   "type": "string",
   "title": "To"
  },
  "data": {
   "type": "string",
   "title": "Data",
   "default": "0x"
  },
  "value_wei": {
   "type": "integer",
   "title": "Value Wei",
   "default": 0
  },
  "from_address": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "title": "From Address",
   "default": null
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-mainnet-eth-call-raw-d06c5652/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.agentindex.world](https://www.zero.xyz/host/x402.agentindex.world/llms.txt)
