Overview

The Staking Reporting API enables you to monitor, analyze, and retrieve detailed information about staking-related activities, such as rewards, statuses, and processing health, across multiple protocols, including:

Use Cases

➡️ Data Granularity

The API supports different levels of data granularity, such as daily or epoch-based data, which can be queried using specific endpoints. Rewards are available at the epoch level as well as daily, weekly, monthly, and yearly roll-ups.

Below is the sample request to get NEAR Validator Rewards:

curl --location 'https://svc.blockdaemon.com/reporting/staking/v2/near/mainnet/validator/rewards' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer KEY \
--data '{
    "startTime": 1727740800,
    "endTime": 1728345600,
    "addresses": [
        "blockdaemon.poolv1.near"
    ],
    "period": "weekly"
}'

This response shows reward data for the specified validator in a weekly granularity, along with details about the validator's start and end balance, delegation count, and epoch range.

{
    "address": "blockdaemon.poolv1.near",
    "denomination": "yocto",
    "return": "1655699299859045601926409113",
    "startTime": 1727740800,
    "endTime": 1728345599,
    "period": "WEEKLY",
    "startBalance": "10355397604811593953839513368507",
    "metadata": {
        "startBlockNumber": "129268311-129743511",
        "epoch": "2765-2776",
        "type": "validator",
        "delegatorCount": "569"
    }
}

➡️ Reporting and Analytics

The Staking Reporting API helps users track staking performance, returns, and identify areas for improvement with clear reports and analytics.

a) Below is the sample request to get Polygon Address Status:

curl --request GET \
     --url https://svc.blockdaemon.com/reporting/staking/v2/polygon/mainnet/validator/status/0xAB30eF276ADC2bE22CE58d75B4F4009173A73676 \
     --header 'X-API-Key: YOUR_API_KEY' \
     --header 'accept: application/json'

This response shows the status of the validator's address along with the metadata details for tracking the validator's performance and status.

{
  "address": "0x875e901465A639f2E71fcfC10F426eD32F5A909a",
  "status": "ACTIVE",
  "timestamp": 1710003868,
  "metadata": {
    "validatorId": "143",
    "validatorContract": "0x875e901465A639f2E71fcfC10F426eD32F5A909a",
    "type": "validator",
    "owner": "0xAB30eF276ADC2bE22CE58d75B4F4009173A73676"
  }
}

b) Another example is the Rewards Processing Health. The API also allows users to monitor the protocol’s rewards processing health and the current status of the blockchain.

curl --request GET \
     --url https://svc.blockdaemon.com/reporting/staking/v2/polygon/mainnet/health \
     --header 'X-API-Key: YOUR_API_KEY' \
     --header 'accept: application/json'

This response indicates that the protocol is operating in an "OPTIMAL" state, with metadata providing an additional context of the network.

{
  "status": "OPTIMAL",
  "timestamp": 1737556200,
  "metadata": {
    "chainCheckpoint": "75333",
    "lastProcessedCheckpoint": "75332"
  }
}

➡️ Yield Metrics

APR is the annual percentage rate. It represents a rate of return without considering the compounding of rewards. In the context of the yield APIs, APR is calculated over the selected date range and annualized.

The calculation is:

APR = ( Total Return for Period Average Stake for Period ) × ( Periods per Year Periods in Calculation )

APY is the annual percentage yield, which takes into account the APR and compounding of rewards. We use the standard APY calculation:

APY = ( 1 + APR N ) N 1

APY = annual percentage yield
APR = annual percentage rate
N = number of compounding periods per year

🚧

Note

For Ethereum, APY is only relevant Post-Pectra upgrade, where a validator’s configured maximum effective balance exceeds its current effective balance.

In this case, rewards are auto-compounded until the maximum is reached. If the validator is already at the maximum, rewards are not compounded, and APY becomes irrelevant.

👍

Related API References


👋 Need Help?

Contact us through email or our support page for any issues, bugs, or assistance you may need.