# EVM Contract Read-Only Function Caller

> EVM Contract Read-Only Function Caller is a paid API for AI agents from api.vextorium.com, paid per call via x402, $0.004/call, status unknown (last checked 2026-10-13).

Calls any read-only (view) function on an EVM smart contract by function signature and returns the decoded result

## Facts

- Endpoint: POST https://api.vextorium.com/leer-contrato-pago?utm_source=zero.xyz
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/evm-contract-read-only-function-caller-2b91d470
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_1mSkbHndNT5o9FZrjX9ag

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-contract-read-only-function-caller-2b91d470 -d '<json body>'
```

Example prompt: What is the name and symbol of the token at contract address 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 on Base? Call name()(string) and symbol()(string) as read-only view functions.

## When to prefer this

Use this endpoint when you need to read state from any EVM smart contract using a human-readable function signature with automatic ABI decoding. It is ideal when you know the function signature but do not have a full ABI, want decoded outputs rather than raw hex, and need to support multiple EVM chains. Prefer the sibling raw eth_call endpoint if you already have pre-encoded calldata and only need the raw 32-byte word split response.

## Known failure modes

- Invalid contract address format returns an error
- Incorrect function signature or mismatched output types causes decode failure
- Unsupported network name (not one of base, ethereum, arbitrum, optimism, polygon) returns a validation error
- Wrong number or type of arguments causes revert or decode failure
- Contract does not exist at the given address on the specified network
- Function is not a view/pure function and cannot be called read-only
- Network RPC unavailable returns a timeout or connection error

## How this service works

Call any read-only (view) function of an EVM contract from its signature, e.g. balanceOf(address)(uint256), with arguments, and get the decoded result. Supports address, bool, intN/uintN, bytesN, string, bytes and arrays. Read-only: nothing is signed or sent.

## Output

A JSON object containing the network, the function signature called, the contract address, the 4-byte selector, a 'resultado' array of decoded return values as strings (one element per output parameter), and 'resultado_hex' with the raw ABI-encoded hex response.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "required": [
      "contrato",
      "funcion"
     ],
     "properties": {
      "red": {
       "enum": [
        "base",
        "ethereum",
        "arbitrum",
        "optimism",
        "polygon"
       ],
       "type": "string"
      },
      "funcion": {
       "type": "string",
       "description": "Signature with output types, e.g. totalSupply()(uint256)"
      },
      "contrato": {
       "type": "string"
      },
      "argumentos": {
       "type": "array",
       "description": "Arguments in order"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": [
      "object",
      "null"
     ],
     "properties": {
      "red": {
       "type": [
        "string",
        "null"
       ]
      },
      "funcion": {
       "type": [
        "string",
        "null"
       ]
      },
      "contrato": {
       "type": [
        "string",
        "null"
       ]
      },
      "selector": {
       "type": [
        "string",
        "null"
       ]
      },
      "resultado": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": [
         "null",
         "string"
        ]
       }
      },
      "resultado_hex": {
       "type": [
        "string",
        "null"
       ]
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "red": "base",
  "funcion": "name()",
  "contrato": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "selector": "0x06fdde03",
  "resultado": [
   "USD Coin"
  ],
  "resultado_hex": "0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000855534420436f696e000000000000000000000000000000000000000000000000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/evm-contract-read-only-function-caller-2b91d470/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.vextorium.com](https://www.zero.xyz/host/api.vextorium.com/llms.txt)
