# ERC-4626 Tokenized Vault Reader

> ERC-4626 Tokenized Vault Reader is a paid API for AI agents from api.vextorium.com, paid per call via x402, $0.004/call, status unknown (last checked 2026-10-10).

Reads on-chain ERC-4626 tokenized vault data (Morpho, Yearn v3, Euler, Fluid, sDAI, etc.) returning underlying asset, total assets, shares outstanding, price per share, and approximate USD TVL.

## Facts

- Endpoint: POST https://api.vextorium.com/v1/erc4626-vault?utm_source=zero.xyz
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/erc-4626-tokenized-vault-reader-a09a0210
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_5TmpW1ymoFrruk2bOQbJf

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 erc-4626-tokenized-vault-reader-a09a0210 -d '<json body>'
```

Example prompt: Can you pull the vault details for the sDAI vault at 0x83F20F44975D03b1b09e64809B757c47f942BEeA on Ethereum — I want to see the price per share, total assets, and approximate TVL in USD?

## When to prefer this

Use this endpoint when you need to read live on-chain ERC-4626 vault metrics — price per share, TVL, total assets, or share supply — for any major vault protocol (Morpho, Yearn v3, Euler, Fluid, sDAI) across Ethereum, Base, Arbitrum, Optimism, or Polygon. Prefer this over generic blockchain RPC calls when you want pre-decoded, human-readable vault data with USD approximations without writing contract ABI parsing logic.

## Known failure modes

- Invalid or non-ERC-4626 vault contract address returns an error or null fields
- Unsupported network returns a validation error
- Contract address exists but vault is not deployed on the specified network
- TVL approximation may be stale if oracle price data is delayed
- Rate limiting or payment failure returns a 402 or 429 error

## How this service works

Read any ERC-4626 tokenized vault (Morpho, Yearn v3, Euler, Fluid, sDAI...) on-chain: underlying asset, total assets, shares outstanding, price per share and approximate TVL in USD.

## Output

Returns a JSON object with the vault contract address, network, vault name, vault symbol, underlying asset (symbol, address, decimals), total assets (in asset units), shares outstanding (stakes), price per share (in asset units per share), approximate TVL in USD, and an optional explanatory note about the price per share.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "required": [
      "vault"
     ],
     "properties": {
      "vault": {
       "type": "string",
       "description": "Vault contract address"
      },
      "network": {
       "enum": [
        "base",
        "ethereum",
        "arbitrum",
        "optimism",
        "polygon"
       ],
       "type": "string"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": [
      "object",
      "null"
     ],
     "properties": {
      "name": {
       "type": [
        "string",
        "null"
       ]
      },
      "note": {
       "type": [
        "string",
        "null"
       ]
      },
      "asset": {
       "type": [
        "object",
        "null"
       ],
       "properties": {
        "symbol": {
         "type": [
          "string",
          "null"
         ]
        },
        "address": {
         "type": [
          "string",
          "null"
         ]
        },
        "decimals": {
         "type": [
          "number",
          "null"
         ]
        }
       }
      },
      "vault": {
       "type": [
        "string",
        "null"
       ]
      },
      "stakes": {
       "type": [
        "number",
        "null"
       ]
      },
      "symbol": {
       "type": [
        "string",
        "null"
       ]
      },
      "network": {
       "type": [
        "string",
        "null"
       ]
      },
      "total_assets": {
       "type": [
        "number",
        "null"
       ]
      },
      "tvl_usd_approx": {
       "type": [
        "number",
        "null"
       ]
      },
      "price_per_share": {
       "type": [
        "number",
        "null"
       ]
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "name": "Savings Dai",
  "note": "Price per share > 1 = the vault has generated yield since its creation (or started that way).",
  "asset": {
   "symbol": "DAI",
   "address": "0x6B175474E89094C44Da98b954EedeAC495271d0F",
   "decimals": 18
  },
  "vault": "0x83F20F44975D03b1b09e64809B757c47f942BEeA",
  "stakes": 139264625.634588,
  "symbol": "sDAI",
  "network": "ethereum",
  "total_assets": 164505714.886556,
  "tvl_usd_approx": 164442216,
  "price_per_share": 1.1812455183
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/erc-4626-tokenized-vault-reader-a09a0210/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)
