# Vextorium ABI Decode

> Vextorium ABI Decode is a paid API for AI agents from api.vextorium.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-15).

Decodes raw EVM ABI-encoded calldata into a human-readable function name, selector, and argument list

## Facts

- Endpoint: POST https://api.vextorium.com/v1/abi-decode?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/vextorium-abi-decode-d2bfd0fb
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_EkZQ_-MSpWsrPKDPLtSDf

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 vextorium-abi-decode-d2bfd0fb -d '<json body>'
```

Example prompt: Can you decode this raw EVM calldata for me — `0xa9059cbb000000000000000000000000...` — and tell me what function was called and what arguments were passed?

## When to prefer this

Choose this endpoint when you need to decode raw EVM transaction calldata into human-readable form without maintaining your own ABI or signature database. Ideal for on-chain forensics, transaction auditing, and debugging smart contract interactions where you only have the raw hex input. It resolves signatures via 4byte.directory, making it useful even when you lack the ABI of the target contract.

## Known failure modes

- Unrecognized selector: function signature not found in 4byte.directory or other lookup sources, returns null for function name
- Malformed calldata: hex string is not valid ABI-encoded data, returns error
- Missing required 'data' field in body: returns 400-level validation error
- Ambiguous selector: multiple matching signatures exist, may return one or null

## How this service works

Decode EVM calldata (transaction input) with the function signature you provide, checking that it matches the selector, or decode return data with its output types (e.g. uint256,address). Local calculation, no third-party signature databases.

## Output

Returns a JSON object containing the decoded function name (e.g. 'transfer(address,uint256)'), the 4-byte function selector (e.g. '0xa9059cbb'), an array of decoded argument values, and the source used to resolve the signature (e.g. '4byte.directory').

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "data": {
   "type": "string"
  },
  "function": {
   "type": "string"
  },
  "output_types": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "function": "transfer(address,uint256)",
  "selector": "0xa9059cbb",
  "arguments": [
   "0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf",
   "1000000"
  ],
  "signature_source": "provided by the client"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/vextorium-abi-decode-d2bfd0fb/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.vextorium.com](https://www.zero.xyz/host/api.vextorium.com/llms.txt)
