Files
wehub-resource-sync 9b395f5cc3
E2E Headed Chrome / e2e-headed (macos-15) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (ubuntu-latest) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (windows-latest) (push) Has been cancelled
CI / build (macos-latest) (push) Has been cancelled
CI / build (ubuntu-latest) (push) Has been cancelled
CI / build (windows-latest) (push) Has been cancelled
CI / unit-test (push) Has been cancelled
CI / bun-test (push) Has been cancelled
CI / adapter-test (push) Has been cancelled
CI / smoke-test (macos-latest) (push) Has been cancelled
CI / smoke-test (ubuntu-latest) (push) Has been cancelled
Security Audit / audit (push) Has been cancelled
Build Chrome Extension / build (push) Has been cancelled
Trigger Website Rebuild (Docs Updated) / dispatch (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:39:48 +08:00

61 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# DefiLlama
**Mode**: 🌐 Public · **Domain**: `defillama.com`
Browse top DeFi protocols by TVL and fetch detailed protocol metadata. Both commands hit the unauthenticated `api.llama.fi` directly.
## Commands
| Command | Description |
|---------|-------------|
| `opencli defillama protocols` | Top DeFi protocols by current TVL (slug, name, category, TVL, mcap, change, chains) |
| `opencli defillama protocol <slug>` | Single protocol details (current TVL, mcap, chains, twitter, github, description) |
## Usage Examples
```bash
# Top 30 protocols by TVL (default)
opencli defillama protocols
# Top 100, JSON output
opencli defillama protocols --limit 100 -f json
# Single protocol details (slug from protocols rows)
opencli defillama protocol aave-v3
opencli defillama protocol lido
# Parent protocols (e.g. "aave") aggregate their children's chains
opencli defillama protocol aave
```
## Output Columns
| Command | Columns |
|---------|---------|
| `protocols` | `rank, slug, name, category, tvl, mcap, change_1d, change_7d, chains, listedAt, url` |
| `protocol` | `slug, name, category, isParent, tvl, tvlAt, mcap, chains, twitter, github, audits, listedAt, description, website, url` |
The `slug` column from `protocols` round-trips into `protocol`.
## Options
### `protocols`
| Option | Description |
|--------|-------------|
| `--limit` | Number of rows to return (1500, default: 30). DefiLlama lists ~7400 protocols total. |
### `protocol`
| Option | Description |
|--------|-------------|
| `slug` (positional) | DefiLlama protocol slug (e.g. `aave-v3`, `lido`, `pancakeswap-amm`) |
## Notes
- **TVL is in USD.** `tvl` and `mcap` are scalar floats; consumers should format as money.
- **Parent vs child protocols.** "Parent" entries (`isParent=true`, e.g. `aave` covers `aave-v3`, `aave-v2`, etc.) are present on `protocol` but not on `protocols`. The adapter aggregates child chains so parents still surface a useful `chains` value.
- **`change_1d` / `change_7d` are percentages** (already as percent, e.g. `0.84` = +0.84%).
- **No API key required.** DefiLlama throttles unauthenticated traffic; an `HTTP 429` surfaces as `CommandExecutionError`.
- **Errors.** Bad slug → `ArgumentError`; unknown slug → `EmptyResultError` (DefiLlama returns `HTTP 400 "Protocol not found"` which is normalised); other 4xx/5xx → `CommandExecutionError`.