Retrieve restaking strategies TVL
curl --request GET \
--url https://api.eigenexplorer.com/metrics/tvl/restaking \
--header 'X-API-Token: <x-api-token>'import requests
url = "https://api.eigenexplorer.com/metrics/tvl/restaking"
headers = {"X-API-Token": "<x-api-token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Token': '<x-api-token>'}};
fetch('https://api.eigenexplorer.com/metrics/tvl/restaking', 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.eigenexplorer.com/metrics/tvl/restaking",
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-API-Token: <x-api-token>"
],
]);
$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.eigenexplorer.com/metrics/tvl/restaking"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Token", "<x-api-token>")
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.eigenexplorer.com/metrics/tvl/restaking")
.header("X-API-Token", "<x-api-token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eigenexplorer.com/metrics/tvl/restaking")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Token"] = '<x-api-token>'
response = http.request(request)
puts response.read_body{
"tvl": 1000000,
"tvlStrategies": {
"cbETH": 1000000,
"stETH": 2000000
},
"tvlStrategiesEth": {
"cbETH": 1000000,
"stETH": 2000000
},
"change24h": {
"value": 10,
"percent": 0.01
},
"change7d": {
"value": 10,
"percent": 0.01
}
}{
"error": {
"code": "bad_request",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#bad_request"
}
}{
"error": {
"code": "unauthorized",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unauthorized"
}
}{
"error": {
"code": "forbidden",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#forbidden"
}
}{
"error": {
"code": "not_found",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#not_found"
}
}{
"error": {
"code": "unprocessable_entity",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unprocessable_entity"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#rate_limit_exceeded"
}
}{
"error": {
"code": "internal_server_error",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#internal_server_error"
}
}Ecosystem Metrics
Retrieve restaking strategies TVL
Returns the combined total value locked (TVL) across all restaking strategies, along with a breakdown of the TVL for each individual strategy.
GET
/
metrics
/
tvl
/
restaking
Retrieve restaking strategies TVL
curl --request GET \
--url https://api.eigenexplorer.com/metrics/tvl/restaking \
--header 'X-API-Token: <x-api-token>'import requests
url = "https://api.eigenexplorer.com/metrics/tvl/restaking"
headers = {"X-API-Token": "<x-api-token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Token': '<x-api-token>'}};
fetch('https://api.eigenexplorer.com/metrics/tvl/restaking', 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.eigenexplorer.com/metrics/tvl/restaking",
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-API-Token: <x-api-token>"
],
]);
$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.eigenexplorer.com/metrics/tvl/restaking"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Token", "<x-api-token>")
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.eigenexplorer.com/metrics/tvl/restaking")
.header("X-API-Token", "<x-api-token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eigenexplorer.com/metrics/tvl/restaking")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Token"] = '<x-api-token>'
response = http.request(request)
puts response.read_body{
"tvl": 1000000,
"tvlStrategies": {
"cbETH": 1000000,
"stETH": 2000000
},
"tvlStrategiesEth": {
"cbETH": 1000000,
"stETH": 2000000
},
"change24h": {
"value": 10,
"percent": 0.01
},
"change7d": {
"value": 10,
"percent": 0.01
}
}{
"error": {
"code": "bad_request",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#bad_request"
}
}{
"error": {
"code": "unauthorized",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unauthorized"
}
}{
"error": {
"code": "forbidden",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#forbidden"
}
}{
"error": {
"code": "not_found",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#not_found"
}
}{
"error": {
"code": "unprocessable_entity",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#unprocessable_entity"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#rate_limit_exceeded"
}
}{
"error": {
"code": "internal_server_error",
"message": "The requested resource was not found.",
"doc_url": "https://docs.eigenexplorer.com/api-reference/errors#internal_server_error"
}
}The total TVL (“tvl”), normalized in
ETH, do not include the TVL of
Eigen tokens as they are currently not transferable. Eigen TVL is
denominated in Eigen tokens.Headers
API Token for authentication
Query Parameters
Toggle whether the route should return 24h/7d change for TVL
Available options:
true, false Example:
"false"
Response
The value of combined restaking strategy TVL and a breakdown of the TVL for each individual strategy.
The value of the combined restaking strategy TVL in ETH
Example:
1000000
The total value locked (TVL) in each restaking strategy, denominated in the strategy's native token
Show child attributes
Show child attributes
Example:
{ "cbETH": 1000000, "stETH": 2000000 }
The total value locked (TVL) in each restaking strategy, denominated in ETH
Show child attributes
Show child attributes
Example:
{ "cbETH": 1000000, "stETH": 2000000 }
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I