# DeFi Oracle — Yield Rates API

> DeFi Oracle — Yield Rates API is a paid API for AI agents from defi-oracle-two.vercel.app, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-14).

Returns DeFi liquidity pool yield rates (APY, TVL, IL risk) for a given blockchain chain, powered by DeFiLlama and on-chain RPC data

## Facts

- Endpoint: POST https://defi-oracle-two.vercel.app/api/yield-rates
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/defi-oracle-yield-rates-api-1eead8ab
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_jCKCBDfXfDtqGrUF7SIxi

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 defi-oracle-yield-rates-api-1eead8ab -d '<json body>'
```

Example prompt: What are the top 20 DeFi yield pools on Arbitrum right now with at least $500k TVL — show me each pool's APY and impermanent loss risk?

## When to prefer this

Use this endpoint when you need structured, per-pool yield rate data for a specific blockchain, including APY breakdown and risk metadata. Prefer this over generic DeFi aggregators when you need IL risk flags, stablecoin classification, and project attribution in a single call, and when the user is asking about yield opportunities on Ethereum, Base, or Arbitrum specifically.

## Known failure modes

- Missing required 'chain' parameter returns a 400 validation error
- Unsupported or misspelled chain name may return empty results or error
- Payment failure via x402/USDC on Base causes 402 Payment Required response
- DeFiLlama upstream outage may cause 502 or empty data
- Very restrictive min_tvl filter may return zero pools

## How this service works

DeFi data for AI agents — yield rates, swap routes, IL calculator, liquidation risk, MEV scanner, TVL tracking. Powered by DeFiLlama + on-chain RPC data. Pay with USDC on Base via x402.

## Output

A JSON object containing a count of matching pools and an array of pool objects, each with APY (total, base, and reward components), TVL in USD, chain name, pool symbol, project name, stablecoin flag, and impermanent loss risk rating. Also includes a filters summary reflecting the query parameters used.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "chain"
 ],
 "properties": {
  "chain": {
   "type": "string",
   "description": "Chain name (Ethereum, Base, Arbitrum, etc.)"
  },
  "limit": {
   "type": "number",
   "description": "Max results (default 20)"
  },
  "min_tvl": {
   "type": "number",
   "description": "Minimum TVL filter (default 100000)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "count": {
   "type": "number"
  },
  "pools": {
   "type": "array",
   "items": {
    "type": "object",
    "properties": {
     "apy": {
      "type": "number"
     },
     "pool": {
      "type": "string"
     },
     "chain": {
      "type": "string"
     },
     "symbol": {
      "type": "string"
     },
     "il_risk": {
      "type": "string"
     },
     "project": {
      "type": "string"
     },
     "tvl_usd": {
      "type": "number"
     },
     "apy_base": {
      "type": "number"
     },
     "apy_reward": {
      "type": "number"
     },
     "stablecoin": {
      "type": "boolean"
     }
    }
   }
  },
  "filters": {
   "type": "object"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/defi-oracle-yield-rates-api-1eead8ab/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from defi-oracle-two.vercel.app](https://www.zero.xyz/host/defi-oracle-two.vercel.app/llms.txt)
