{"uid":"cap_D8Cr828vBkOg0RH13fthI","slug":"agentshelf-ethereum-eth-call-31f98642","name":"Agentshelf Ethereum eth_call","description":"Call when an agent needs a read-only Ethereum eth_call. Send to and data (hex) or a function signature plus args. Optional from and block. Reverts return a decoded reason. No state change and no spend. Send JSON {\"to\":\"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\"data\":\"0x18160ddd\"}. Exact $0.003 USDC on Base. Try unpaid POST /v1/sandbox/eth-call first.","url":"https://agentshelf.syntexa.ch/v1/eth-call?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"to":{"type":"string","examples":["0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"],"description":"Contract to call on Ethereum mainnet. Example: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. The call is eth_call with no value, so it cannot change state."},"args":{"type":"string","maxLength":2048,"minLength":2,"description":"JSON array of arguments. Example: [\"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045\"]. A POST array is accepted. Requires signature."},"data":{"type":"string","pattern":"^0x[0-9a-fA-F]*$","examples":["0x18160ddd"],"description":"Calldata, 0x hex, at most 2048 characters. Example: 0x18160ddd (totalSupply()). Send data or signature, not both. eth_call cannot change state."},"from":{"type":"string","description":"Optional eth_call from address. Example: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. It is not a transaction sender and nothing is spent."},"block":{"type":"string","description":"Block tag. Example: latest. Also finalized, safe, or a block number. Default latest."},"signature":{"type":"string","maxLength":180,"minLength":3,"description":"Function signature. Example: decimals() or balanceOf(address)(uint256). args is a JSON array when the function has parameters. Send signature or data, not both."}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.003","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.003/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_6TJcfzICvoijYYlir75dZ","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.003","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Executes a read-only Ethereum mainnet eth_call given a contract address and calldata or function signature, returning decoded results or revert reasons.","exampleAgentPrompt":"Can you call the totalSupply() function on the USDC contract at 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on Ethereum mainnet and tell me the result?","exampleUseCases":[{"title":"Query ERC-20 token total supply","prompt":"What is the total supply of USDC? Call the totalSupply() function on the USDC contract at 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on Ethereum mainnet."},{"title":"Check wallet token balance on-chain","prompt":"How many USDC tokens does the address 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 hold? Use balanceOf(address) on the USDC contract 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48."},{"title":"Read DeFi protocol state variable","prompt":"Can you read the decimals() value from the DAI stablecoin contract at 0x6B175474E89094C44Da98b954EedeAC495271d0F on Ethereum mainnet?"}],"resultDescription":"Returns the decoded output of the eth_call — such as a uint256 balance, a string name, or a boolean — along with a decoded revert reason if the call reverted. No transaction is broadcast and no ETH or gas is spent.","failureModes":["Contract does not exist at the given address — returns an error or empty result","Calldata is malformed or signature is invalid — returns a parse or revert error","Both data and signature provided simultaneously — returns a validation error","Block tag is invalid or not yet available — returns an error","Contract call reverts — returns a decoded revert reason string","Network timeout or Ethereum node unavailability — returns a 5xx error","Payment not received (x402) — returns 402 Payment Required before processing"],"whenToPreferThis":"Use this endpoint when you need to read on-chain Ethereum mainnet state from a smart contract without sending a transaction or spending gas. Prefer it over web3 library calls when running in an environment without direct Ethereum node access. It supports both raw calldata hex and human-readable function signatures with typed arguments, and it decodes revert reasons automatically. Try the free sandbox endpoint at /v1/sandbox/eth-call first to validate your call before paying.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:20:35.249Z","isFirstParty":false,"canonicalSlug":"agentshelf-ethereum-eth-call-31f98642"}