List the DeFi protocols of a chain by TVL
/v1/chains/{chain}/defi/protocolsCall this for the protocols with the most value locked on a chain, and the total of each category. tvl_usd is the protocol's own TVL on this chain. Exchange custody (category CEX) and the chain's own entry (category Chain) are left out, as DefiLlama leaves them out of a chain's TVL. The rows do not add up to the chain's TVL (coverage chain_protocols_not_additive), and the changes are those of the protocol on all its chains (chain_protocol_change_all_chains). limit is 1 to 100, 25 by default, and applies to items only. categories covers every protocol. The list is read from DefiLlama every hour. Sona keeps an answer for 10 minutes.
Path parameters
| Name | Type | Description |
|---|---|---|
chainRequired | string | The chain, as a CAIP-2 chain ID. Ethereum, |
Query parameters
| Name | Type | Description |
|---|---|---|
limit | integerDefault 25 | How many protocols to list, from 1 to 100. A value out of range answers 400 |
Response
The answer, wrapped in the {data, meta, links} envelope.
| Field | Type | Description |
|---|---|---|
| categories | array of objects | Every category of the chain, largest first, counting every protocol and not only the |
| chain | string | A chain ID in the CAIP-2 format |
| coverage | array of strings | The codes of the limits that apply to this answer, in a fixed order. It is empty when none applies. |
| items | array of objects | Largest first. |
| kind | string | chain_protocols |
Cost
1 credit. The time limit is 5 seconds.
Errors
| Status | Code |
|---|---|
| 400 | invalid_idinvalid_query |
| 404 | unsupported_chain |
| 429 | rate_limitedcredits_exhausted |
| 500 | internal |
| 503 | upstream_unavailable |
| 504 | deadline_exceeded |
400 invalid_id, 400 invalid_query for a limit outside 1 to 100 or another query key, 404 unsupported_chain, 429 rate_limited or credits_exhausted, 503 upstream_unavailable before the first refresh, and 504 deadline_exceeded.