List lending protocols
curl --request GET \
--url https://api.messari.io/metrics/v2/protocols/lending \
--header 'X-Messari-API-Key: <api-key>'import requests
url = "https://api.messari.io/metrics/v2/protocols/lending"
headers = {"X-Messari-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Messari-API-Key': '<api-key>'}};
fetch('https://api.messari.io/metrics/v2/protocols/lending', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.messari.io/metrics/v2/protocols/lending",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Messari-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.messari.io/metrics/v2/protocols/lending"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Messari-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.messari.io/metrics/v2/protocols/lending")
.header("X-Messari-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.messari.io/metrics/v2/protocols/lending")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Messari-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"error": null,
"data": {
"data": [
{
"id": "675b85dc-85a1-4096-9600-212e90a56e9a",
"name": "Aave",
"slug": "aave",
"activity": {
"tvl24HourUsd": 54964415837.89591,
"activeAddresses24Hour": 13456,
"fees24HourUsd": 2423233.7748409403
},
"lending": {
"feesSupplySide24HourUsd": 2071008.5197647174,
"tokenIncentives24HourUsd": 240691.80134054483,
"expenses24HourUsd": 240691.80134054483,
"netDeposits24HourUsd": 54964415837.89591,
"treasuryUsd": 245181554.73247993,
"borrowedUsd": 23493351926.05168
}
},
{
"id": "ed659e93-6de9-4c95-8e9c-4ae0e3889826",
"name": "Maple Finance (legacy)",
"slug": "maple-finance",
"activity": {
"tvl24HourUsd": 4515305425.587565,
"activeAddresses24Hour": 2,
"fees24HourUsd": 143749.98534941123
},
"lending": {
"feesSupplySide24HourUsd": 118950.12572331856,
"tokenIncentives24HourUsd": 0,
"expenses24HourUsd": 0,
"netDeposits24HourUsd": 4515305425.587565,
"treasuryUsd": 8487684.103209546,
"borrowedUsd": 2100874542.7428308
}
},
{
"id": "21ef8a1b-7b6d-47a8-ac7e-b3c1aac3905b",
"name": "Fluid",
"slug": "fluid-instadapp",
"activity": {
"tvl24HourUsd": 4053614898.6617727,
"activeAddresses24Hour": 184,
"fees24HourUsd": 227570.19051174168
},
"lending": {
"feesSupplySide24HourUsd": 184091.30714850308,
"tokenIncentives24HourUsd": 0,
"expenses24HourUsd": 0,
"netDeposits24HourUsd": 4053614898.6617727,
"treasuryUsd": 115754943.82956968,
"borrowedUsd": 1780841727.5860696
}
},
{
"id": "b4a4024c-14c1-4e90-b092-b27cb58b7521",
"name": "Compound",
"slug": "compound",
"activity": {
"tvl24HourUsd": 3284034102.8126397,
"activeAddresses24Hour": 1322,
"fees24HourUsd": 143699.55830551684
},
"lending": {
"feesSupplySide24HourUsd": 130199.90808079128,
"tokenIncentives24HourUsd": 16347.910628502446,
"expenses24HourUsd": 16347.910628502446,
"netDeposits24HourUsd": 3284034102.8126397,
"treasuryUsd": 21190999.23328768,
"borrowedUsd": 1145849358.8257718
}
},
{
"id": "4bb0dcdd-75ae-4b34-92fc-64400dcdff8e",
"name": "Euler Finance",
"slug": "euler-finance",
"activity": {
"tvl24HourUsd": 2257895569.976147,
"activeAddresses24Hour": 1085,
"fees24HourUsd": 209944.9364837526
},
"lending": {
"feesSupplySide24HourUsd": 185040.6848534592,
"tokenIncentives24HourUsd": null,
"expenses24HourUsd": null,
"netDeposits24HourUsd": 2257895569.976147,
"treasuryUsd": 26604687.240410868,
"borrowedUsd": 1256452527.5359335
}
}
],
"metadata": {
"pageSize": 100,
"page": 1,
"totalRows": 13,
"totalPages": 1
}
}
}{
"data": "<unknown>",
"error": "<string>"
}{
"data": "<unknown>",
"error": "<string>"
}{
"data": "<unknown>",
"error": "<string>"
}Lending
List Lending Protocols
Returns a complete list of all available Lending protocols supported by Messari, along with metrics. The response aggregates data across all deployments and versions of protocols (e.g., AAVE includes V3, V2, and V1).
GET
/
metrics
/
v2
/
protocols
/
lending
List lending protocols
curl --request GET \
--url https://api.messari.io/metrics/v2/protocols/lending \
--header 'X-Messari-API-Key: <api-key>'import requests
url = "https://api.messari.io/metrics/v2/protocols/lending"
headers = {"X-Messari-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Messari-API-Key': '<api-key>'}};
fetch('https://api.messari.io/metrics/v2/protocols/lending', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.messari.io/metrics/v2/protocols/lending",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Messari-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.messari.io/metrics/v2/protocols/lending"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Messari-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.messari.io/metrics/v2/protocols/lending")
.header("X-Messari-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.messari.io/metrics/v2/protocols/lending")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Messari-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"error": null,
"data": {
"data": [
{
"id": "675b85dc-85a1-4096-9600-212e90a56e9a",
"name": "Aave",
"slug": "aave",
"activity": {
"tvl24HourUsd": 54964415837.89591,
"activeAddresses24Hour": 13456,
"fees24HourUsd": 2423233.7748409403
},
"lending": {
"feesSupplySide24HourUsd": 2071008.5197647174,
"tokenIncentives24HourUsd": 240691.80134054483,
"expenses24HourUsd": 240691.80134054483,
"netDeposits24HourUsd": 54964415837.89591,
"treasuryUsd": 245181554.73247993,
"borrowedUsd": 23493351926.05168
}
},
{
"id": "ed659e93-6de9-4c95-8e9c-4ae0e3889826",
"name": "Maple Finance (legacy)",
"slug": "maple-finance",
"activity": {
"tvl24HourUsd": 4515305425.587565,
"activeAddresses24Hour": 2,
"fees24HourUsd": 143749.98534941123
},
"lending": {
"feesSupplySide24HourUsd": 118950.12572331856,
"tokenIncentives24HourUsd": 0,
"expenses24HourUsd": 0,
"netDeposits24HourUsd": 4515305425.587565,
"treasuryUsd": 8487684.103209546,
"borrowedUsd": 2100874542.7428308
}
},
{
"id": "21ef8a1b-7b6d-47a8-ac7e-b3c1aac3905b",
"name": "Fluid",
"slug": "fluid-instadapp",
"activity": {
"tvl24HourUsd": 4053614898.6617727,
"activeAddresses24Hour": 184,
"fees24HourUsd": 227570.19051174168
},
"lending": {
"feesSupplySide24HourUsd": 184091.30714850308,
"tokenIncentives24HourUsd": 0,
"expenses24HourUsd": 0,
"netDeposits24HourUsd": 4053614898.6617727,
"treasuryUsd": 115754943.82956968,
"borrowedUsd": 1780841727.5860696
}
},
{
"id": "b4a4024c-14c1-4e90-b092-b27cb58b7521",
"name": "Compound",
"slug": "compound",
"activity": {
"tvl24HourUsd": 3284034102.8126397,
"activeAddresses24Hour": 1322,
"fees24HourUsd": 143699.55830551684
},
"lending": {
"feesSupplySide24HourUsd": 130199.90808079128,
"tokenIncentives24HourUsd": 16347.910628502446,
"expenses24HourUsd": 16347.910628502446,
"netDeposits24HourUsd": 3284034102.8126397,
"treasuryUsd": 21190999.23328768,
"borrowedUsd": 1145849358.8257718
}
},
{
"id": "4bb0dcdd-75ae-4b34-92fc-64400dcdff8e",
"name": "Euler Finance",
"slug": "euler-finance",
"activity": {
"tvl24HourUsd": 2257895569.976147,
"activeAddresses24Hour": 1085,
"fees24HourUsd": 209944.9364837526
},
"lending": {
"feesSupplySide24HourUsd": 185040.6848534592,
"tokenIncentives24HourUsd": null,
"expenses24HourUsd": null,
"netDeposits24HourUsd": 2257895569.976147,
"treasuryUsd": 26604687.240410868,
"borrowedUsd": 1256452527.5359335
}
}
],
"metadata": {
"pageSize": 100,
"page": 1,
"totalRows": 13,
"totalPages": 1
}
}
}{
"data": "<unknown>",
"error": "<string>"
}{
"data": "<unknown>",
"error": "<string>"
}{
"data": "<unknown>",
"error": "<string>"
}Authorizations
Query Parameters
Page number (1-indexed)
Example:
1
Number of results per page
Example:
10
Column to sort by (default: tvl_usd)
Available options:
tvl_usd, active_addresses, fees_usd, fees_supply_side_usd, expenses_usd, dex_volume_usd, borrowed_usd, treasury_usd Sort direction: asc or desc (default: desc)
Available options:
asc, desc ⌘I

