# Morpho Lending API
> Live DeFi lending data from Morpho — a leading decentralised lending protocol built on isolated Morpho Blue markets (each a single collateral/loan asset pair with its own liquidation LTV and price oracle) plus curated MetaMorpho vaults that allocate deposits across those markets. Served from Morpho's public GraphQL API as clean JSON, no cache. List the lending markets on a chain with each market's loan and collateral asset, supply and borrow APY (gross and net), supplied and borrowed USD, utilisation and liquidation LTV (sorted by size); fetch one market's full state by id; list the MetaMorpho vaults with their asset, net APY and total assets; or list the chains Morpho runs on. Read live from Morpho, nothing cached. This is Morpho's own isolated-lending-market, interest-rate and vault layer — distinct from on-chain explorers, DEX/yield feeds and price APIs: protocol-level lending money-market data.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/morpho-api/..."
```

## Pricing
- **Free** (Free) — 950 calls/Mo, 3 req/s
- **Starter** ($12/Mo) — 34,000 calls/Mo, 12 req/s
- **Pro** ($32/Mo) — 176,000 calls/Mo, 28 req/s
- **Business** ($76/Mo) — 890,000 calls/Mo, 55 req/s

## Endpoints

### Markets

#### `GET /v1/markets` — Lending markets on a chain with supply/borrow APY, TVL, LLTV

**Parameters:**
- `chain` (query, optional, string) — Chain id (1=Ethereum) Example: `1`
- `limit` (query, optional, string) — Max markets (1-500) Example: `50`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/morpho-api/v1/markets?chain=1&limit=50"
```

**Response:**
```json
{
    "data": {
        "chain": "Ethereum",
        "count": 50,
        "source": "Morpho",
        "markets": [
            {
                "lltv_pct": 86,
                "market_id": "0x64d65c9a2d91c36d56fbc42d69e979335320169b3df63bf92789e2c8883fcc64",
                "borrow_usd": 236193723.31,
                "loan_asset": "USDC",
                "supply_usd": 264332554.24,
                "borrow_apy_pct": 4.1387,
                "supply_apy_pct": 3.6901,
                "utilization_pct": 89.3548,
                "collateral_asset": "cbBTC",
                "loan_asset_address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
                "net_borrow_apy_pct": 4.1387,
                "net_supply_apy_pct": 3.6901,
                "collateral_asset_address": "0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf"
            },
            {
                "lltv_pct": 86,
                "market_id": "0xe7e9694b754c4d4f7e21faf7223f6fa71abaeb10296a4c43a54a7977149687d2",
                "borrow_usd": 140574971.28,
                "loan_asset": "USDT",
                "supply_usd": 166250662.06,
                "borrow_apy_pct": 4.1887,
                "supply_apy_pct": 3.5305,
                "utilization_pct": 84.556,
                "collateral_asset": "wstETH",
                "loan_asset_address": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
                "net_borrow_apy_pct": 4.1887,
                "net_supply_apy_pct": 3.5305,
                "collateral_asset_address
…(truncated, see openapi.json for full schema)
```

### Market

#### `GET /v1/market` — One market's full state by id

**Parameters:**
- `id` (query, required, string) — Market id (0x + 64 hex) Example: `0x64d65c9a2d91c36d56fbc42d69e979335320169b3df63bf92789e2c8883fcc64`
- `chain` (query, optional, string) — Chain id Example: `1`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/morpho-api/v1/market?id=0x64d65c9a2d91c36d56fbc42d69e979335320169b3df63bf92789e2c8883fcc64&chain=1"
```

**Response:**
```json
{
    "data": {
        "chain": "Ethereum",
        "source": "Morpho",
        "lltv_pct": 86,
        "market_id": "0x64d65c9a2d91c36d56fbc42d69e979335320169b3df63bf92789e2c8883fcc64",
        "borrow_usd": 236193723.31,
        "loan_asset": "USDC",
        "supply_usd": 264332554.24,
        "borrow_apy_pct": 4.1387,
        "supply_apy_pct": 3.6901,
        "utilization_pct": 89.3548,
        "collateral_asset": "cbBTC",
        "loan_asset_address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
        "net_borrow_apy_pct": 4.1387,
        "net_supply_apy_pct": 3.6901,
        "collateral_asset_address": "0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf"
    },
    "meta": {
        "timestamp": "2026-06-10T22:58:07.458Z",
        "request_id": "9875b87c-f1ac-4fe2-b70a-f52d7c5eb3bd"
    },
    "status": "ok",
    "message": "Market retrieved successfully",
    "success": true
}
```

### Vaults

#### `GET /v1/vaults` — MetaMorpho vaults with asset, net APY and total assets

**Parameters:**
- `chain` (query, optional, string) — Chain id Example: `1`
- `limit` (query, optional, string) — Max vaults (1-500) Example: `50`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/morpho-api/v1/vaults?chain=1&limit=50"
```

**Response:**
```json
{
    "data": {
        "chain": "Ethereum",
        "count": 50,
        "source": "Morpho",
        "vaults": [
            {
                "name": "Sentora PYUSD",
                "asset": "PYUSD",
                "symbol": "senPYUSD",
                "address": "0x19b3cD7032B8C062E8d44EaCad661a0970DD8c55",
                "apy_pct": 2.4179,
                "fee_pct": 0,
                "net_apy_pct": 2.4179,
                "total_assets_usd": 295489466.17
            },
            {
                "name": "Steakhouse Ethena USDtb",
                "asset": "USDtb",
                "symbol": "steakUSDTBethena",
                "address": "0xBeEFC1CDAfc5b4a649b54D07AFc6bF0f75C6F4E2",
                "apy_pct": 9.449,
                "fee_pct": 5,
                "net_apy_pct": 8.956,
                "total_assets_usd": 100365510.19
            },
            {
                "name": "Steakhouse USDC",
                "asset": "USDC",
                "symbol": "steakUSDC",
                "address": "0xBEEF01735c132Ada46AA9aA4c54623cAA92A64CB",
                "apy_pct": 3.6932,
                "fee_pct": 5,
                "net_apy_pct": 3.5053,
                "total_assets_usd": 96884775.81
            },
            {
                "name": "Steakhouse USDT",
                "asset": "USDT",
                "symbol": "steakUSDT",
                "address": "0xbEef047a543E45807105E51A8BBEFCc5950fcfBa",
                "apy_pct": 3.5305,
                "fee_pct": 5
…(truncated, see openapi.json for full schema)
```

### Chains

#### `GET /v1/chains` — Chains Morpho runs on

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/morpho-api/v1/chains"
```

**Response:**
```json
{
    "data": {
        "count": 7,
        "chains": [
            {
                "name": "Ethereum",
                "chain_id": 1
            },
            {
                "name": "Optimism",
                "chain_id": 10
            },
            {
                "name": "Unichain",
                "chain_id": 130
            },
            {
                "name": "Polygon",
                "chain_id": 137
            },
            {
                "name": "Base",
                "chain_id": 8453
            },
            {
                "name": "Arbitrum",
                "chain_id": 42161
            },
            {
                "name": "Katana",
                "chain_id": 747474
            }
        ],
        "source": "Morpho"
    },
    "meta": {
        "timestamp": "2026-06-10T22:58:08.265Z",
        "request_id": "915e4f65-624b-485e-9ec4-94917f978c49"
    },
    "status": "ok",
    "message": "Chains retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Service metadata

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/morpho-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "APY/utilisation are fractions shown as *_pct; LLTV is the liquidation loan-to-value in %.",
        "source": "Morpho GraphQL API (blue-api.morpho.org, live)",
        "service": "morpho-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/chains": "Chains Morpho runs on.",
            "GET /v1/market": "One market's full state by id (chain=1, id=0x + 64 hex).",
            "GET /v1/vaults": "MetaMorpho vaults with asset, net APY and total assets (chain=1, limit=50).",
            "GET /v1/markets": "Lending markets on a chain with supply/borrow APY, TVL, LLTV (chain=1, limit=50)."
        },
        "description": "Live DeFi lending data from Morpho, a leading decentralised lending protocol built on isolated Morpho Blue markets (each a single collateral/loan pair with its own liquidation LTV and oracle) plus curated MetaMorpho vaults. Via Morpho's public GraphQL API. The markets endpoint returns the lending markets on a chain with loan/collateral asset, supply and borrow APY, supplied/borrowed USD, utilisation and liquidation LTV, sorted by size; the market endpoint returns one market's full state by id; the vaults endpoint returns MetaMorpho vaults with asset, net APY and total assets; the chains endpoint lists the chains Morpho runs on. Live, no key, nothing stored. Distinct from on-chain explorers, DEX/yield feeds and price APIs — this is Morpho's own isolated-lending-market, rate and vault laye
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/morpho-api
OpenAPI spec: https://www.oanor.com/api/morpho-api/openapi.json
