Explorer
Syncing—

EVM Transaction ExplainerService

tx-explain

Explain an EVM transaction in one call. POST JSON {"chain_id": 1, "tx_hash": "0x..."} to /v1/tool, or GET /v1/explain?tx_hash=...; chains: Ethereum (1), Optimism (10), BNB Chain (56), Polygon (137), Base (8453), Arbitrum (42161). The response is a JSON object with a plain-language summary, the decoded method and arguments, assets_moved (native value plus every ERC-20 and ERC-721 transfer in the receipt, with symbols and scaled amounts), parties, contract_context (verified name, proxy and implementation), risk_flags (unlimited approval, approval for all, upgradeable proxy, unverified or unknown contract, reverted) and gas (used, price, fee, status). No USD values.

Active Suppliers
52
of 52 ever configured
Service Info
Service ID
tx-explain
Compute Units / Relay
100,000
Active Applications
2
Relay Mining EMA
1 relays
Service Metadata Cardsource: on-chain metadata (LCD)
{10 items
"schema":"pocket-service-card/v1"
"description":"Explain an EVM transaction in one call. POST JSON {"chain_id": 1, "tx_hash": "0x..."} to /v1/tool, or GET /v1/explain?tx_hash=...; chains: Ethereum (1), Optimis..."
"rpc_types":[1 item
0:{4 items
"type":"REST"
"intent":"expected"
"backend_hint":"tx-explain HTTP server on :8080; POST /v1/tool (POST / also reaches it through the relay), GET /v1/health + /v1/version."
"notes":"Every response is a JSON object; errors are JSON 4xx with an error field."
}
]
"apis":[1 item
0:"tx-explain-core"
]
"specs":[1 item
0:{4 items
"kind":"openapi"
"api":"tx-explain-core"
"url":"https://services.supnodes.com/specs/tx-explain/openapi.json"
"notes":"Machine-readable OpenAPI 3.0.3 contract for this service, with example requests."
}
]
"access":"public"
"results":"variable"
"serving":{7 items
"backend":"Single-process Python 3 HTTP server, standard library only, behind a RelayMiner (rest backend). No auth toward the backend; callers cannot send headers. Reads t..."
"implementations":[1 item
0:"tx-explain >= 1.0"
]
"docs":"https://services.supnodes.com/specs/tx-explain/README.md"
"min_disk_gb":1
"min_ram_gb":1
"healthcheck":[3 items
0:{4 items
"rpc_type":"REST"
"request":{2 items
"path":"/v1/version"
"method":"GET"
}
"expect":{2 items
"json_path":"$.service"
"matches":"^tx-explain$"
}
"notes":"Identity probe: pins the backend to this service so a wrong backend cannot be staked under this id."
}
1:{4 items
"rpc_type":"REST"
"request":{2 items
"path":"/v1/health"
"method":"GET"
}
"expect":{2 items
"json_path":"$.status"
"matches":"^ok$"
}
"notes":"Readiness probe."
}
2:{4 items
"rpc_type":"REST"
"request":{3 items
"path":"/v1/tool"
"method":"POST"
"body":{2 items
"chain_id":1
"tx_hash":"0x0fe8c764aeb33454d741e7112ea7d6530c05a4349d8abc93a4e2d7d683c59dfd"
}
}
"expect":{2 items
"json_path":"$.assets_moved[0].symbol"
"matches":"^USDT$"
}
"notes":"Functional probe: a confirmed transaction that moved USDT; a few RPC reads."
}
]
"notes":"Upstreams are public APIs (RPC, Sourcify, 4byte.directory) that may rate-limit. Gateway operators: configure as type passthrough with rpc_types ["rest"]."
}
"docs":"https://services.supnodes.com/specs/tx-explain/README.md"
"updated":"2026-09-26"
}