# Hermes x402 Toolkit – Smart Contract Inspector

> Hermes x402 Toolkit – Smart Contract Inspector is a paid API for AI agents from api.zlovev.com, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-18).

Fetches and returns ABI, proxy info, source code metadata, and verification status for a smart contract address on Base or Ethereum mainnet.

## Facts

- Endpoint: GET https://api.zlovev.com/api/contract/inspect
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-18
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/hermes-x402-toolkit-smart-contract-inspector-5886a3f6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_y96Y6P9C7Cn17_ZXak1Jq

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 hermes-x402-toolkit-smart-contract-inspector-5886a3f6
```

Example prompt: Can you inspect the smart contract at 0x833500000000000000000000000000000000002913 on Base mainnet and show me its ABI, whether it's a proxy, and who verified it?

## When to prefer this

Choose this endpoint when you need quick, no-signup smart contract inspection on Base or Ethereum mainnet — especially for resolving proxy contracts, retrieving ABI signatures for agent tool-calling, or verifying source code authenticity. Ideal for AI agents operating in Web3 workflows that need contract metadata on-demand without managing API keys, paying only $0.05 USDC per call via x402.

## Known failure modes

- Invalid contract address format returns an error — address must be 0x + 40 hex chars
- Address is an EOA (non-contract) — ok:true but is_contract:false
- Contract exists but is unverified — verified:false with no ABI or source returned
- Unsupported chain value — only 'base' and 'eth' are accepted
- Payment failure via x402 protocol — request blocked if USDC payment on Base is not confirmed
- Source code truncated if contract exceeds 120k characters when include_source=true

## How this service works

Pay-per-call data API for AI agents. No API key, no account, no signup — pay USDC on Base (eip155:8453) per request; free /api/meta lists all 22 endpoints. One call each: web page to LLM-ready text and link previews; China A-share quotes and limit-up pool; Chinese text and pinyin; Base/Ethereum on-chain reads (address, token, ERC-20 balances, tx, blocks, transfer history, gas price in USD); NFT records (collection, owner, and ipfs:// tokenURI resolved through public gateways); full-page screenshots; email verification without sending mail; ENS forward/reverse resolution; smart-contract due diligence (ABI, verified source, proxy); token security facts (owner, renounced ownership, paused, bytecode capability selectors); domain dossier (RDAP, DNS, TLS certificate, HTTP facts, hosting network).

## Output

Returns a JSON object containing: contract name, ABI entry count and function/event signatures, proxy type and implementation addresses (if applicable), verification status and verifying providers (e.g. Sourcify, Blockscout), Solidity compiler version, code size in bytes, network identifier, and optionally the full verified source code text (up to 120k chars).

## 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": {
      "chain": {
       "enum": [
        "base",
        "eth"
       ],
       "type": "string",
       "description": "base = Base mainnet (eip155:8453), eth = Ethereum mainnet (eip155:1). Default base"
      },
      "address": {
       "type": "string",
       "description": "Contract address (0x + 40 hex) on the chosen chain"
      },
      "include_source": {
       "type": "boolean",
       "description": "true = also return the verified source code text (truncated at 120k chars). Default false"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "abi": {
   "returned": 9,
   "truncated": false,
   "signatures": [
    "function admin() returns (address)",
    "event AdminChanged(address,address)"
   ],
   "entries_total": 9
  },
  "name": "FiatTokenProxy",
  "proxy": {
   "proxy_type": "eip1967_oz",
   "implementations": [
    {
     "address": "0x2ce6…"
    }
   ]
  },
  "source": {
   "chars": 1568,
   "sha256": "9f2c…",
   "included": false
  },
  "address": "0x8335…2913",
  "network": "eip155:8453",
  "language": "solidity",
  "sourcify": {
   "match": "exact_match"
  },
  "verified": true,
  "cross_check": {
   "agree": true
  },
  "is_contract": true,
  "verified_by": [
   "blockscout",
   "sourcify"
  ],
  "code_size_bytes": 1852,
  "compiler_version": "v0.6.12+commit.27d51765"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/hermes-x402-toolkit-smart-contract-inspector-5886a3f6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.zlovev.com](https://www.zero.xyz/host/api.zlovev.com/llms.txt)
