defillama-api
Version:
A wrapper around the Defillama API
112 lines (77 loc) • 3.54 kB
Markdown
# Defillama API
A javascript wrapper around the defillama api. Complete with docs and tests.
## Install
```
npm install defillama-api
```
## Get started
```javascript
import defillama from "defillama-api";
const response = await defillama.tvl.protocols();
const data = await response.json();
```
## API documentation
[Official Defillama api docs](https://defillama.com/docs/api)
## API overview
The defillama api consists of different categories. Each of these categories can be acccessed with their matching name.
### Categories
- TVL
- coins
- stablecoins
- yields
- abi-decoder
- bridges
- volumes
- fees and revenue
### Mapping
#### TVL
- `defillama.tvl.protocols()` - /protocols
- `defillama.tvl.protocol(protocol)` - /protocols/{protocol}
- `defillama.tvl.current(protocol)` - /tvl/{protocol}
- `defillama.tvl.chainsHistorical()` - /v2/historicalChainTvl
- `defillama.tvl.chainHistorical(chain)` - /v2/historicalChainTvl/{chain}
- `defillama.tvl.charts()` - /charts
- `defillama.tvl.chainCharts(chain)` - /charts/{chain}
- `defillama.tvl.chains()` - /chains
#### coins
- `defillama.coins.pricesCurrent()` - /protocols
- `defillama.coins.pricesFirst(protocol)` - /protocols/{protocol}
- `defillama.coins.pricesHistorical(protocol)` - /tvl/{protocol}
- `defillama.coins.chart()` - /v2/historicalChainTvl
- `defillama.coins.percentage(chain)` - /v2/historicalChainTvl/{chain}
- `defillama.coins.block()` - /charts
#### stablecoins
- `defillama.stablecoins.all(params)` - /stablecoins
- `defillama.stablecoins.chartAll(params)` - /stablecoincharts/all
- `defillama.stablecoins.historyChain(chain, params)` - /stablecoincharts/{chain}
- `defillama.stablecoins.historyAsset(stablecoinId)` - /stablecoin/{stablecoinId}
- `defillama.stablecoins.overviewChains(chain)` - /stablecoinchains
- `defillama.stablecoins.historyPrices()` - /stablecoinprices
#### yields
- `defillama.yields.pools()` - /pools
- `defillama.yields.chartPool(pool)` - /chart/{pool}
#### abi-decoder
- `defillama.abiDecoder.getABI(params)` - /fetch/signature
- `defillama.abiDecoder.getVerboseABI(chain, address, params)` - /fetch/contract/{chain}/{address}
#### bridges
- `defillama.bridges.all(params)` - /bridges
- `defillama.bridges.summary(bridgeId)` - /bridge/{bridgeId}
- `defillama.bridges.historyVolume(chain, params)` - /bridgevolume/{chain}
- `defillama.bridges.statsDay(timestamp, chain, params)` - /bridgedaystats/{timestamp}/{chain}
- `defillama.bridges.transactions(id, params)` - /transactions/{id}
#### volumes
- `defillama.volumes.dexsAll(params)` - /overview/dexs
- `defillama.volumes.dexsChain(chain, params)` - /overview/dexs/{chain}
- `defillama.volumes.dexsProtocol(protocol, params)` - /summary/dexs/{protocol}
- `defillama.volumes.dexsOptions(params)` - /overview/options
- `defillama.volumes.dexsOptionsChain(chain, params)` - /overview/options/{chain}
- `defillama.volumes.dexsOptionsProtocol(protocol, params)` - /summary/options/{protocol}
#### fees and revenue
- `defillama.feesRevenue.all(params)` - /overview/fees
- `defillama.feesRevenue.chain(chain, params)` - /overview/fees/{chain}
- `defillama.feesRevenue.protocol(protocol, params)` - /summary/fees/{protocol}
## Contributing
Defillama is shipping fast and things will change, if you see new or changed things, feel free to open an issue and/or contribute.
Other things that need to happen:
- [ ] Add CI.
- [ ] If needed, more tests.