Get stake account summary metrics
curl --request GET \
--url https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary', 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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"delegatedStake": 100000.55,
"delegatorApy": 0.05,
"mevCommissionRate": 0.07,
"mevRewardsApr": 0,
"networkPenetration": 0.24,
"stakeAccount": "123FPQtifVXkooNAhiYiKeoQaL9tD9kkY5mQvGRwnLy2",
"stakeAuthority": "q9XWcZ7T1wP4bW9SB4XgNNwjnFEJ982nE8aVbbNuwot",
"stakingRewardsApy": 0.05,
"status": "active",
"sumCommissionPaid": 0.0001,
"sumMevCommissionPaid": 0,
"sumMevRewards": 0,
"sumMissedStakingRewards": 0,
"sumRewards": 0.002,
"sumStakingCommissionPaid": 0.0001,
"sumStakingRewards": 0.002,
"timeWindow": "1d",
"validatorEffectiveness": 0.984,
"validatorName": "Ledger by Figment",
"validatorVoteAccount": "26pV97Ce83ZQ6Kz9XT4td8tdoUFPTng8Fb8gPyc53dJx",
"voteCommissionRate": 0.07,
"withdrawAuthority": "q9XWcZ7T1wP4bW9SB4XgNNwjnFEJ982nE8aVbbNuwot"
}{
"detail": [
{
"msg": "<string>",
"type": "<string>",
"loc": [
"<string>"
]
}
]
}Overview
Get stake account summary metrics
This endpoint returns various metrics for a specific stake account aggregated across different time windows.
GET
/
v1
/
solana
/
delegators
/
stakeAccounts
/
{stake_account}
/
summary
Get stake account summary metrics
curl --request GET \
--url https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary', 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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <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.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rated.network/v1/solana/delegators/stakeAccounts/{stake_account}/summary")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"delegatedStake": 100000.55,
"delegatorApy": 0.05,
"mevCommissionRate": 0.07,
"mevRewardsApr": 0,
"networkPenetration": 0.24,
"stakeAccount": "123FPQtifVXkooNAhiYiKeoQaL9tD9kkY5mQvGRwnLy2",
"stakeAuthority": "q9XWcZ7T1wP4bW9SB4XgNNwjnFEJ982nE8aVbbNuwot",
"stakingRewardsApy": 0.05,
"status": "active",
"sumCommissionPaid": 0.0001,
"sumMevCommissionPaid": 0,
"sumMevRewards": 0,
"sumMissedStakingRewards": 0,
"sumRewards": 0.002,
"sumStakingCommissionPaid": 0.0001,
"sumStakingRewards": 0.002,
"timeWindow": "1d",
"validatorEffectiveness": 0.984,
"validatorName": "Ledger by Figment",
"validatorVoteAccount": "26pV97Ce83ZQ6Kz9XT4td8tdoUFPTng8Fb8gPyc53dJx",
"voteCommissionRate": 0.07,
"withdrawAuthority": "q9XWcZ7T1wP4bW9SB4XgNNwjnFEJ982nE8aVbbNuwot"
}{
"detail": [
{
"msg": "<string>",
"type": "<string>",
"loc": [
"<string>"
]
}
]
}These endpoints return high level information about stake accounts over the time period such as their network penetration, rewards, annual percentage yield (APY), paid commissions, and the effectiveness of their validator delegate/s.
On the
1d time period, the APY takes into account the rewards received for the last 3 days to smooth out the noise given Solana’s staking rewards schedule, which is every epoch (~2 days).Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Query Parameters
Available options:
1d, 7d, 30d, all Response
Successful Response
Available options:
1d, 7d, 30d, all Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Pattern:
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$