{"uid":"cap_xoXD-qHsnWbRG8S16iCsm","slug":"erc20-abi-encoder-131c6732","name":"ERC20 ABI Encoder","description":"opentools utility endpoint","url":"https://chargers-borders-cedar-fig.trycloudflare.com/tools/erc20-encode","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"body":{"type":"object"},"type":{"type":"string","const":"http"},"method":{"enum":["POST","PUT","PATCH"],"type":"string"},"bodyType":{"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"unprobed","priceSource":"registry","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":"unknown","summary":"price unknown","primary":{"kind":"unknown","protocol":"x402","network":"base","amountUsd":null,"per":"call","confidence":"unknown"},"accepted":[{"kind":"unknown","protocol":"x402","network":"base","amountUsd":null,"per":"call","confidence":"unknown"}]},"paymentMethods":[{"uid":"pm_hmfHTESHty19rRuhD8S-3","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7c32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Encodes ERC-20 token contract method calls into ABI-encoded hex data for use in Ethereum transactions","exampleAgentPrompt":"Encode an ERC-20 transfer call for sending 1000 USDC (6 decimals, so 1000000000 raw units) to address 0xAbCd...1234 — I need the ABI-encoded hex calldata to include in a raw Ethereum transaction.","exampleUseCases":[{"title":"Encode ERC-20 token transfer calldata","prompt":"I need to build a raw Ethereum transaction to transfer 500 USDT to 0xDEAD...BEEF — can you encode the ERC-20 transfer(address,uint256) call into hex calldata for me?"},{"title":"Prepare approve allowance for DeFi protocol","prompt":"Encode an ERC-20 approve call granting the Uniswap router at 0x7a25...3F40 an allowance of 1000000000000000000 (1 token in 18-decimal units) so I can build the approval transaction."},{"title":"Generate balanceOf calldata for off-chain query","prompt":"Give me the ABI-encoded calldata to call balanceOf on an ERC-20 contract for wallet address 0x1234...5678 — I want to send it as an eth_call without a full Web3 library."}],"resultDescription":"Returns ABI-encoded hex calldata representing the specified ERC-20 method call, ready to be included as the 'data' field in a raw Ethereum transaction or used with eth_call.","failureModes":["Invalid or missing method name returns an error response","Incorrect parameter types or count cause encoding failure","Malformed address (wrong length or non-hex) causes validation error","Missing required 'type' or 'method' fields in the input object returns 400","Unsupported ERC-20 method name not in the standard ABI returns an unknown method error"],"whenToPreferThis":"Use this endpoint when you need to programmatically encode ERC-20 function calls into ABI hex calldata without importing a full Web3 library (ethers.js, web3.py). It is ideal for lightweight agents or serverless environments where installing blockchain SDKs is undesirable, and when constructing raw Ethereum transactions or eth_call payloads for standard ERC-20 methods like transfer, approve, transferFrom, balanceOf, and allowance.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T18:30:31.792Z","isFirstParty":false}