Blockdaemon Documentation
Ethereum Staking Reporting API
Validator Endpoints
(GET) Get Status of Validator
(POST) Get Status of Validators
(GET) Get Stake & Rewards of Validator
(POST) Get Stake & Rewards of Validators
(POST) Get Historical Stake & Rewards of Validator
(POST) Get Historical Stake & Rewards of Validators
(GET) Verify Staking Activity of Validator
(POST) Verify Staking Activity of Validators
Overview
With Blockdaemon Staking Reporting API, you can easily access staking information from multiple protocols for your financial data analysis needs.
The Ethereum Staking Reporting API endpoints listed in this section allow the retrieval of staking data in Ethereum Mainnet. You can get the current or historical stake & rewards allocated to a given validator address and other data.
Please note: you can query historical data since 11th April, 2022
See also:
Supported Networks
Blockdaemon Staking Reporting API supports the following Ethereum networks:
- Ethereum Mainnet
- Ethereum Testnet
(GET) Get Status of Validator
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/status/{address}
Returns the current status of a given validator address.
Learn how to authorize your request: Authentication Guide
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
It is also required to specify a validator address as the last path parameter, e.g.:
0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Queries
The query in this section provides a useful example for (GET) Get Status of Validator.
To get the current status of a validator in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/status/0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Response
The following is a typical response from (GET) Get Status of Validator:
{
"address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"status": "active",
"index": 230088,
"earliestReportDate": "2022-04-10"
}
(POST) Get Status of Validators
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/status
Returns the current status of multiple given validator addresses.
Learn how to authorize your request: Authentication Guide
Request Body
In the body of your request, specify an array of validator addresses, for example:
{
"addresses": [
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"0x87631fa23a8458fc0ea43ab36f9087580f2c60dfd44a4858f5eaaa1d0a3d56be3c1a3e79cc139d30e44260009535b34f"
]
}
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
Example Queries
The query in this section provides a useful example for (GET) Get Status of Validators.
To get the current status of multiple validators in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/status
Example Response
The following is a typical response from (POST) Get Status of Validators:
[
{
"address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"status": "active",
"index": 230088,
"earliestReportDate": "2022-04-10"
},
{...more items...}
]
(GET) Get Stake & Rewards of Validator
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/rewards/{address}
Returns the current stake & rewards allocated to a given validator address. Timestamps are given in UTC.
Learn how to authorize your request: Authentication Guide
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
It is also required to specify a validator address as the last path parameter, e.g.:
0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Queries
The query in this section provides a useful example for (GET) Get Stake & Rewards of Validator.
To get the current stake & rewards of a validator in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/rewards/0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Response
The following is a typical response from (GET) Get Stake & Rewards of Validator:
{ "address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335", "currency": "ETH", "return": 0.023357528, "timeStart": "2022-08-01T00:00:00Z", "timeEnd": "2022-08-07T23:59:59Z", "timeAggregation": "weekly", "startingBalance": 33.495762794, "metadata": { "validatorIndex": 23008, "protocolRewards": 0.003142331, "txFeeRewards": 0, "mevRewards": 0 } }
(POST) Get Stake & Rewards of Validators
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/rewards
Returns the current stake & rewards allocated to multiple given validator addresses. Timestamps are given in UTC.
Learn how to authorize your request: Authentication Guide
Request Body
In the body of your request, specify an array of validator addresses, for example:
{
"addresses": [
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"0x87631fa23a8458fc0ea43ab36f9087580f2c60dfd44a4858f5eaaa1d0a3d56be3c1a3e79cc139d30e44260009535b34f"
]
}
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
Query Parameters
To aggregate rewards across addresses, use the following parameter:
- parameter:
aggregate
- value:
true
/false
(default)
Example Queries
The query in this section provides a useful example for (POST) Get Stake & Rewards of Validators.
To get the aggregated rewards of multiple validators in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/rewards?aggregate=true
Example Response
The following is a typical response from (POST) Get Stake & Rewards of Validators (non-aggregated):
[ { "address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335", "currency": "ETH", "return": 0.023357528, "timeStart": "2022-08-01T00:00:00Z", "timeEnd": "2022-08-07T23:59:59Z", "timeAggregation": "weekly", "startingBalance": 33.495762794, "metadata": { "validatorIndex": 230088, "protocolRewards": 0.003142331, "txFeeRewards": 0, "mevRewards": 0 } }, { ...more items...} ]
(POST) Get Historical Stake & Rewards of Validator
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/history/{address}
Returns the historical stake & rewards allocated to a given validator address. Timestamps are given in UTC.
You can query historical data since 11th April, 2021.
Learn how to authorize your request: Authentication Guide
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
It is also required to specify a validator address as the last path parameter, e.g.:
0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Request Body
In the body of your request, specify a date range, for example:
{
"fromTime": 1659312000000,
"toTime": 1661990390000,
"timeUnit": "weekly"
}
In the fromTime
and toTime
fields, you should specify Unix timestamps in milliseconds (UTC time zone).
The timeUnit
parameter takes the following values:
Value | Response |
day / daily |
All the rewards between given timestamps, aggregated by day |
week / weekly |
All the rewards between given timestamps, aggregated by week |
month / monthly |
All the rewards between given timestamps, aggregated by month |
Example Queries
The query in this section provides a useful example for (GET) Get Historical Stake & Rewards of Validator.
To get historical stake & rewards of a validator in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/history/0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Response
The following is a typical response from (POST) Get Historical Stake & Rewards of Validator:
[ { "address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335", "currency": "ETH", "return": 0.023357528, "timeStart": "2022-08-01T00:00:00Z", "timeEnd": "2022-08-07T23:59:59Z", "timeAggregation": "weekly", "startingBalance": 33.495762794, "metadata": { "validatorIndex": 230088, "protocolRewards": 0.003142331, "txFeeRewards": 0, "mevRewards": 0 } }, { ...more items...} ]
(POST) Get Historical Stake & Rewards of Validators
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/history
Returns the historical stake & rewards allocated to multiple given validator addresses. Timestamps are given in UTC.
Note: You can query historical data since 11th April, 2021.
Learn how to authorize your request: Authentication Guide
Request Body
In the body of your request, specify a date range and an array of validator addresses, for example:
{
"fromTime": 1659312000000,
"toTime": 1661990390000,
"timeUnit": "weekly",
"addresses": [
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"0x87631fa23a8458fc0ea43ab36f9087580f2c60dfd44a4858f5eaaa1d0a3d56be3c1a3e79cc139d30e44260009535b34f"
]
}
In the fromTime
and toTime
fields, you should specify Unix timestamps in milliseconds (UTC time zone).
The timeUnit
parameter takes the following values:
Value | Response |
day / daily |
All the rewards between given timestamps, aggregated by day |
week / weekly |
All the rewards between given timestamps, aggregated by week |
month / monthly |
All the rewards between given timestamps, aggregated by month |
Query Parameters
To aggregate rewards across addresses, use the following parameter:
- parameter:
aggregate
- value:
true
/false
(default)
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
Example Queries
The query in this section provides a useful example for (POST) Get Historical Stake & Rewards of Validators.
To get the aggregated historical rewards of multiple validators in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/history?aggregate=true
Example Response
The following is a typical response from (POST) Get Historical Stake & Rewards of Validators (non-aggregated)
[ { "address": "0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335", "currency": "ETH", "return": 0.023357528, "timeStart": "2022-08-01T00:00:00Z", "timeEnd": "2022-08-07T23:59:59Z", "timeAggregation": "weekly", "startingBalance": 33.495762794, "metadata": { "validatorIndex": 230088, "protocolRewards": 0.003142331, "txFeeRewards": 0, "mevRewards": 0 } }, { ...more items... } ]
(GET) Verify Staking Activity of Validator
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/active/{address}
Returns true if a given validator address is active, false otherwise.
Learn how to authorize your request: Authentication Guide
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
It is also required to specify a validator address as the last path parameter, e.g.:
0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Queries
The query in this section provides a useful example for (GET) Verify Staking Activity of Validator.
To verify the staking activity of a validator in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/active/0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335
Example Response
The following is a typical response from (GET) Verify Staking Activity of Validator:
{
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335": true
}
(POST) Verify Staking Activity of Validators
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/{network}/validator/active
Returns true if a given validator address is active, false otherwise (for each address from a list).
Learn how to authorize your request: Authentication Guide
Request Body
In the body of your request, specify an array of validator addresses, for example:
{
"addresses": [
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335",
"0x87631fa23a8458fc0ea43ab36f9087580f2c60dfd44a4858f5eaaa1d0a3d56be3c1a3e79cc139d30e44260009535b34f"
]
}
Path Parameters
You should specify one of the supported networks as a path parameter:
mainnet
testnet
Example Queries
The query in this section provides a useful example for (GET) Verify Staking Activity of Validators.
To verify the staking activity of multiple validators in Ethereum Mainnet, use the following query:
https://svc.blockdaemon.com/reporting/staking/v1/ethereum/mainnet/validator/active
Example Response
The following is a typical response from (GET) Verify Staking Activity of Validators:
[
{
"0xb6f83e120b08f4bd119d3cf0ddd1d329cfa01032fe3ea0743977828f28db2265051e59308b04f1e07908209e28aa2335": true
},
{ ...more items... }
]