DeFi TVL for protocols and chains
DeFi TVL for protocols and chains. Returns total value locked per DeFi protocol or per chain via DefiLlama, with category, supported chains, and TVL change over time, filterable by category or chain. For DeFi protocol screening, chain-level TVL comparison, and tracking where liquidity is moving. Keyless.
20000 (raw units)
price
64
calls / 30d
3
unique payers
2026-09-18
updated
Provider
api.kadec0.xyz · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x4df66B6c140778fe0717880A7c6dDE5Ea53AcDeA",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "20000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"category": "Lending",
"maxItems": "10",
"mode": "protocols"
},
"type": "http"
},
"output": {
"example": {
"count": 1,
"items": [
{
"category": "Lending",
"chains": [
"Ethereum",
"Polygon"
],
"change7d": 1.2,
"name": "Aave",
"symbol": "AAVE",
"tvl": 13045749087,
"type": "defi_protocol",
"url": "https://aave.com"
}
]
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"category": {
"description": "exact category, e.g. Dexes|Lending|CDP",
"type": "string"
},
"chain": {
"description": "protocol must touch this chain",
"type": "string"
},
"maxItems": {
"default": "25",
"type": "string"
},
"mode": {
"default": "protocols",
"enum": [
"protocols",
"chains"
],
"type": "string"
},
"q": {
"description": "name substring filter",
"type": "string"
}
},
"required": [],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
}Use it
curl
curl "https://api.kadec0.xyz/v1/defi-tvl" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://api.kadec0.xyz/v1/defi-tvl");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://api.kadec0.xyz/v1/defi-tvl")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/315.json, and this resource appears in /discovery/resources and /discovery/search.