Skip to main content
GET
/
api
/
v1
/
network
/
stake
Get network stake information
curl --request GET \
  --url https://mainnet.mirrornode.hedera.com/api/v1/network/stake
import requests

url = "https://mainnet.mirrornode.hedera.com/api/v1/network/stake"

response = requests.get(url)

print(response.text)
const options = {method: 'GET'};

fetch('https://mainnet.mirrornode.hedera.com/api/v1/network/stake', 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://mainnet.mirrornode.hedera.com/api/v1/network/stake",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);

$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://mainnet.mirrornode.hedera.com/api/v1/network/stake"

req, _ := http.NewRequest("GET", url, nil)

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://mainnet.mirrornode.hedera.com/api/v1/network/stake")
.asString();
require 'uri'
require 'net/http'

url = URI("https://mainnet.mirrornode.hedera.com/api/v1/network/stake")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
{
  "max_stake_rewarded": 10,
  "max_staking_reward_rate_per_hbar": 17808,
  "max_total_reward": 20,
  "node_reward_fee_fraction": 1,
  "reserved_staking_rewards": 30,
  "reward_balance_threshold": 40,
  "stake_total": 35000000000000000,
  "staking_period": {
    "from": "1655164800.000000000",
    "to": "1655251200.000000000"
  },
  "staking_period_duration": 1440,
  "staking_periods_stored": 365,
  "staking_reward_fee_fraction": 1,
  "staking_reward_rate": 100000000000,
  "staking_start_threshold": 25000000000000000,
  "unreserved_staking_reward_balance": 50
}
{
"_status": {
"messages": [
{
"message": "Invalid parameter: account.id"
},
{
"message": "Invalid Transaction id. Please use \\shard.realm.num-sss-nnn\\ format where sss are seconds and nnn are nanoseconds"
}
]
}
}
{
"_status": {
"messages": [
{
"detail": "No network stake data found",
"message": "Not Found"
}
]
}
}
{
"_status": {
"messages": [
{
"message": "Require at least 1/3 signature files to prove consensus, got 1 out of 4 for file 2019-10-11T13_33_25.526889Z.rcd_sig"
}
]
}
}

Response

OK

max_stake_rewarded
integer<int64>
required

The maximum amount of tinybar that can be staked for reward while still achieving the maximum per-hbar reward rate

max_staking_reward_rate_per_hbar
integer<int64>
required

The maximum reward rate, in tinybars per whole hbar, that any account can receive in a day

max_total_reward
integer<int64>
required

The total tinybars to be paid as staking rewards in the ending period, after applying the settings for the 0.0.800 balance threshold and the maximum stake rewarded

node_reward_fee_fraction
number<float>
required

The fraction between zero and one of the network and service fees paid to the node reward account 0.0.801

reserved_staking_rewards
integer<int64>
required

The amount of the staking reward funds of account 0.0.800 reserved to pay pending rewards that have been earned but not collected

reward_balance_threshold
integer<int64>
required

The unreserved tinybar balance of account 0.0.800 required to achieve the maximum per-hbar reward rate

stake_total
integer<int64>
required

The total amount staked to the network in tinybars the start of the current staking period

staking_period
object
required

The timestamp range of the staking period

staking_period_duration
integer<int64>
required

The number of minutes in a staking period

staking_periods_stored
integer<int64>
required

The number of staking periods for which the reward is stored for each node

staking_reward_fee_fraction
number<float>
required

The fraction between zero and one of the network and service fees paid to the staking reward account 0.0.800

staking_reward_rate
integer<int64>
required

The total number of tinybars to be distributed as staking rewards each period

staking_start_threshold
integer<int64>
required

The minimum balance of staking reward account 0.0.800 required to active rewards

unreserved_staking_reward_balance
integer<int64>
required

The unreserved balance of account 0.0.800 at the close of the just-ending period; this value is used to compute the HIP-782 balance ratio