{"uid":"cap_Pc0W79O0eqGRs0MXY6zlu","slug":"revert-wtf-abi-aware-evm-revert-data-decoder-29799c46","name":"revert.wtf ABI-Aware EVM Revert Data Decoder","description":"Paid hosted ABI-aware EVM revert data decoder. Send revert bytes and optionally an ABI JSON string.","url":"https://revert.wtf/api/x402/revert-decode?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"data":{"type":"string"},"abiText":{"type":"string"}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","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.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_oeV8XRxwZoJpx445Ehp_k","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Decodes raw EVM revert bytes into human-readable error messages using an optional ABI JSON for custom error types.","exampleAgentPrompt":"Can you decode this EVM revert data for me — the raw bytes are 0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000134e6f7420656e6f75676820616c6c6f77616e6365000000000000000000000000 — and if it helps, here's the contract ABI: [{\"type\":\"error\",\"name\":\"InsufficientAllowance\",\"inputs\":[{\"name\":\"needed\",\"type\":\"uint256\"},{\"name\":\"available\",\"type\":\"uint256\"}]}]","exampleUseCases":[{"title":"Debug failed DeFi transaction","prompt":"My swap transaction just failed on-chain. The raw revert data is 0x08c379a000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000010536c69707061676520746f6f206c6f770000000000000000000000000000000000 — can you decode that and tell me what the revert reason actually says?"},{"title":"Decode custom Solidity error with ABI","prompt":"I have a custom error revert from my smart contract. The hex revert data is 0x4e487b710000000000000000000000000000000000000000000000000000000000000032 and here's the ABI: [{\"type\":\"error\",\"name\":\"Panic\",\"inputs\":[{\"name\":\"code\",\"type\":\"uint256\"}]}]. What error is this and what do the decoded parameters mean?"},{"title":"Automated revert decoding in CI pipeline","prompt":"As part of our test suite, when a transaction reverts, decode the raw revert bytes automatically using the contract's ABI so we get a human-readable error instead of raw hex in the test output. Here's the latest failure data: 0xe450d38c and the ABI for that contract."}],"resultDescription":"Returns the decoded revert reason as a human-readable string, including the error name, decoded parameters, and their values when an ABI is provided. For standard errors (e.g. Error(string) or Panic(uint256)) decoding works without an ABI; for custom errors the ABI JSON enables full parameter decoding.","failureModes":["Invalid or malformed hex data returns a decode error","ABI JSON parse failure if abiText is malformed JSON","Unknown 4-byte selector with no ABI provided results in partial decode (selector only)","Empty data field returns an error indicating no revert data to decode","Payment failure (x402) if USDC balance is insufficient"],"whenToPreferThis":"Use this endpoint when you have raw EVM revert bytes from a failed transaction and need to understand the human-readable error. It is the right choice when dealing with custom Solidity errors that require ABI context to decode fully, or when you need a fast, deterministic programmatic decode rather than a natural-language explanation. Prefer this over the revert.wtf error explanation endpoint when you specifically have raw hex bytes and want structured decoded output rather than a prose explanation.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-11T12:36:35.136Z","isFirstParty":false,"canonicalSlug":"revert-wtf-abi-aware-evm-revert-data-decoder-29799c46"}