Rewards Accounting
Last updated
Last updated
The Rated API facilitates efficient and detailed management of rewards distributed on Ethereum. By leveraging the API, users can achieve granular insight into their reward dynamics, aiding in precise accounting and better decision-making.
Node Operators can keep track of their rewards in granular detail, accounting for the attribution of rewards for specific validator duties.
Pools, Custodians and Centralised Exchanges can take stock of the rewards they receive from one or more staking providers in a consolidated view, including a breakdown of the different sources of rewards.
Sign into the Rated Console to generate your API Token.
The Rated API offers time window aggregation, allowing you to consolidate data over various time periods such as day
, week
, month
, quarter
, year
or all time
. You can retrieve reward info in two ways:
Pre-materialized views
Specific validator groups
Imagine you're Kiln (a Node Operator), Lido (a Pool), or Coinbase (an Exchange). You want all your reward details (consensus layer and execution layer including penalties) for August 2023, shown daily. Here's how you'd go about getting this data.
Call the endpoint with the following parameters set:
operator_id
Yes
string
idType
Yes
string
The type of entity class you would like returned. You might ask for pool
, poolShare
, nodeOperator
, depositAddress
, or withdrawalAddress
.
Note: it is optional and can be inferred automatically for pools, pool shares and node operators. It defaults to depositAddress
if it is missing and an address is provided.
granularity
Yes
string
The size of time increments you are looking to query. Can be day
/ week
/ month
/ quarter
/ year
.
For this example, you should set granularity to day
.
from
Yes
string
Start day (integer) or date (e.g. from=“2022-12-01”)
For this example, set from to 2023-08-31
size
Yes
integer
The number of results included per page. For this example, you should set size as 31 as we want the monthly data for August 2023.
filterType
Yes
string
hour
, day
and datetime
For this example, set to datetime
include
Yes
array
A list of field names.
To get the rewards data, you should include the following data: day
,
sumEarnings
, sumEstimatedRewards
, sumEstimatedPenalties
, sumPriorityFees
, sumBaselineMev
, sumMissedExecutionRewards
, sumConsensusBlockRewards
, sumMissedConsensusBlockRewards
, sumAllRewards
, sumAttestationRewards
, sumMissedAttestationRewards
, sumMissedAttestationPenalties
, sumWrongTargetPenalties
, sumLateTargetPenalties
, sumWrongHeadPenalties
and sumLateSourcePenalties
# Example: Obtaining daily reward metrics for the month of August 2023 for Kiln
curl -v -X 'GET' \
'https://api.rated.network/v0/eth/operators/Kiln/effectiveness?idType=nodeOperator&granularity=day&from=2023-08-31&size=31&filterType=datetime&include=sumEarnings&include=day&include=sumEstimatedRewards&include=sumEstimatedPenalties&include=sumPriorityFees&include=sumBaselineMev&include=sumMissedExecutionRewards&include=sumConsensusBlockRewards&include=sumMissedConsensusBlockRewards&include=sumAttestationRewards&include=sumAllRewards&include=sumMissedAttestationRewards&include=sumMissedAttestationPenalties&include=sumWrongTargetPenalties&include=sumLateTargetPenalties&include=sumWrongHeadPenalties&include=sumLateSourcePenalties' \
-H 'Content-Type: application/json' \
-H 'X-Rated-Network: mainnet' \
-H 'Authorization: Bearer <YOUR-TOKEN-HERE>'
import requests
url = "https://api.rated.network/v0/eth/operators/Coinbase/effectiveness"
params = {
"idType": "nodeOperator",
"granularity": "day",
"from": "2023-08-31",
"size": 31,
"filterType": "datetime",
"include": [
"sumEarnings", "day", "sumEstimatedRewards", "sumEstimatedPenalties",
"sumPriorityFees", "sumBaselineMev", "sumMissedExecutionRewards",
"sumConsensusBlockRewards", "sumMissedConsensusBlockRewards",
"sumAttestationRewards", "sumAllRewards", "sumMissedAttestationRewards",
"sumMissedAttestationPenalties", "sumWrongTargetPenalties",
"sumLateTargetPenalties", "sumWrongHeadPenalties", "sumLateSourcePenalties"
]
}
headers = {
"Content-Type": "application/json",
"X-Rated-Network": "mainnet",
"Authorization": "Bearer <YOUR-TOKEN-HERE>"
}
response = requests.get(url, params=params, headers=headers)
data = response.json()
You will get the following response:
{
"page": {
"from": "2023-08-31",
"to": null,
"size": 31,
"granularity": "day",
"filterType": "datetime"
},
"total": 898,
"data": [
{
"day": 1003,
"sumEarnings": 77486856706,
"sumEstimatedRewards": 77373138429,
"sumEstimatedPenalties": -118318923,
"sumPriorityFees": 17774426424,
"sumBaselineMev": 3491590102,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9990007760,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 98752873232,
"sumWrongTargetPenalties": -49457460.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -13833800.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 67667148655.0,
"sumLateSourcePenalties": -11938591.0,
"sumMissedAttestationRewards": 284356667.0
},
{
"day": 1002,
"sumEarnings": 77143472373,
"sumEstimatedRewards": 77391611207,
"sumEstimatedPenalties": -120229039,
"sumPriorityFees": 18343668557,
"sumBaselineMev": 10356072440,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 10319158586,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 105843213370,
"sumWrongTargetPenalties": -26537147.0,
"sumLateTargetPenalties": -21268.0,
"sumMissedAttestationPenalties": -36654580.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 67263902633.0,
"sumLateSourcePenalties": -19645906.0,
"sumMissedAttestationRewards": 286496225.0
},
{
"day": 1001,
"sumEarnings": 76074505835,
"sumEstimatedRewards": 76247558832,
"sumEstimatedPenalties": -137348952,
"sumPriorityFees": 19972445511,
"sumBaselineMev": 6018452671,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9791416575,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 102065404017,
"sumWrongTargetPenalties": -44169801.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -36647400.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 66503540668.0,
"sumLateSourcePenalties": -15249640.0,
"sumMissedAttestationRewards": 329264913.0
},
{
"day": 1000,
"sumEarnings": 74927018847,
"sumEstimatedRewards": 74951967765,
"sumEstimatedPenalties": -87687005,
"sumPriorityFees": 19894046470,
"sumBaselineMev": 6328736364,
"sumMissedExecutionRewards": 64569010,
"sumConsensusBlockRewards": 9663448571,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 101149801681,
"sumWrongTargetPenalties": -22716304.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -13626780.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 65429057326.0,
"sumLateSourcePenalties": -25472167.0,
"sumMissedAttestationRewards": 299629203.0
},
{
"day": 999,
"sumEarnings": 74450326845,
"sumEstimatedRewards": 74442548500,
"sumEstimatedPenalties": -94866866,
"sumPriorityFees": 15629334347,
"sumBaselineMev": 3163139471,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9143393628,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 93242800663,
"sumWrongTargetPenalties": -16739619.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -27380820.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 65416918513.0,
"sumLateSourcePenalties": -16548504.0,
"sumMissedAttestationRewards": 322013802.0
},
{
"day": 998,
"sumEarnings": 74559187641,
"sumEstimatedRewards": 74955978079,
"sumEstimatedPenalties": -118172069,
"sumPriorityFees": 13262259657,
"sumBaselineMev": 13354512742,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9361867132,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 101175960040,
"sumWrongTargetPenalties": -33376759.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -19439660.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 65604374555.0,
"sumLateSourcePenalties": -11486685.0,
"sumMissedAttestationRewards": 408981581.0
},
{
"day": 997,
"sumEarnings": 75052710169,
"sumEstimatedRewards": 74978533403,
"sumEstimatedPenalties": -99768855,
"sumPriorityFees": 16001568993,
"sumBaselineMev": 5507554734,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8946159003,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 96561833896,
"sumWrongTargetPenalties": -17664088.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -7671440.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 66308894671.0,
"sumLateSourcePenalties": -19986120.0,
"sumMissedAttestationRewards": 285461898.0
},
{
"day": 996,
"sumEarnings": 74871703449,
"sumEstimatedRewards": 74708910502,
"sumEstimatedPenalties": -75255605,
"sumPriorityFees": 19605086555,
"sumBaselineMev": 22209861662,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9728316748,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 116686651666,
"sumWrongTargetPenalties": -13585351.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -10273620.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 65245633437.0,
"sumLateSourcePenalties": -16255204.0,
"sumMissedAttestationRewards": 221794127.0
},
{
"day": 995,
"sumEarnings": 74316890091,
"sumEstimatedRewards": 74039058325,
"sumEstimatedPenalties": -57112712,
"sumPriorityFees": 18504571594,
"sumBaselineMev": 11768658033,
"sumMissedExecutionRewards": 82083111,
"sumConsensusBlockRewards": 9456206280,
"sumMissedConsensusBlockRewards": 37448909,
"sumAllRewards": 104590119718,
"sumWrongTargetPenalties": -14968772.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -2750740.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 64940299581.0,
"sumLateSourcePenalties": -10766084.0,
"sumMissedAttestationRewards": 220500261.0
},
{
"day": 994,
"sumEarnings": 72508933169,
"sumEstimatedRewards": 72423066679,
"sumEstimatedPenalties": -95087909,
"sumPriorityFees": 16880244177,
"sumBaselineMev": 2760444076,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 7992521257,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 92149621422,
"sumWrongTargetPenalties": -26118846.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -16278480.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 64712341492.0,
"sumLateSourcePenalties": -23772294.0,
"sumMissedAttestationRewards": 267184308.0
},
{
"day": 993,
"sumEarnings": 72803366526,
"sumEstimatedRewards": 72606477307,
"sumEstimatedPenalties": -92099755,
"sumPriorityFees": 19482043694,
"sumBaselineMev": 8999804612,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8473582662,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 101285214832,
"sumWrongTargetPenalties": -36716394.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -9331120.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 64478387038.0,
"sumLateSourcePenalties": -18030117.0,
"sumMissedAttestationRewards": 272457748.0
},
{
"day": 992,
"sumEarnings": 71975424908,
"sumEstimatedRewards": 73002158724,
"sumEstimatedPenalties": -107227509,
"sumPriorityFees": 18884800795,
"sumBaselineMev": 6729257290,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8340423622,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 97589482993,
"sumWrongTargetPenalties": -5972265.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -25987300.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 64448595752.0,
"sumLateSourcePenalties": -26496505.0,
"sumMissedAttestationRewards": 326248992.0
},
{
"day": 991,
"sumEarnings": 71693037399,
"sumEstimatedRewards": 71534022217,
"sumEstimatedPenalties": -80770537,
"sumPriorityFees": 15475987697,
"sumBaselineMev": 2388037004,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8776044106,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 89557062100,
"sumWrongTargetPenalties": -13690729.0,
"sumLateTargetPenalties": -21632.0,
"sumMissedAttestationPenalties": -16372540.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 63028705091.0,
"sumLateSourcePenalties": -16504019.0,
"sumMissedAttestationRewards": 324803231.0
},
{
"day": 990,
"sumEarnings": 71201257831,
"sumEstimatedRewards": 71323917377,
"sumEstimatedPenalties": -61400543,
"sumPriorityFees": 19460495365,
"sumBaselineMev": 20033856389,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8934140687,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 110695609585,
"sumWrongTargetPenalties": -21345376.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -9318400.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62463557805.0,
"sumLateSourcePenalties": -9295104.0,
"sumMissedAttestationRewards": 264891633.0
},
{
"day": 989,
"sumEarnings": 72921120155,
"sumEstimatedRewards": 73099619635,
"sumEstimatedPenalties": -86178482,
"sumPriorityFees": 28427036992,
"sumBaselineMev": 39116573891,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9732141534,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 140464731038,
"sumWrongTargetPenalties": -27817062.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -9261540.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 63476439000.0,
"sumLateSourcePenalties": -13139483.0,
"sumMissedAttestationRewards": 259552569.0
},
{
"day": 988,
"sumEarnings": 70756984738,
"sumEstimatedRewards": 70860707768,
"sumEstimatedPenalties": -88235800,
"sumPriorityFees": 20710830304,
"sumBaselineMev": 15488157260,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8397890884,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 106955972302,
"sumWrongTargetPenalties": -51629604.0,
"sumLateTargetPenalties": -16263.0,
"sumMissedAttestationPenalties": -4412060.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62630617761.0,
"sumLateSourcePenalties": -4766734.0,
"sumMissedAttestationRewards": 257295869.0
},
{
"day": 987,
"sumEarnings": 70893103774,
"sumEstimatedRewards": 70741064230,
"sumEstimatedPenalties": -56303757,
"sumPriorityFees": 24327872488,
"sumBaselineMev": 3849211195,
"sumMissedExecutionRewards": 152541808,
"sumConsensusBlockRewards": 8517893562,
"sumMissedConsensusBlockRewards": 37158073,
"sumAllRewards": 99070187457,
"sumWrongTargetPenalties": -31729126.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -5024360.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62499986937.0,
"sumLateSourcePenalties": -1398628.0,
"sumMissedAttestationRewards": 199524315.0
},
{
"day": 986,
"sumEarnings": 71345527791,
"sumEstimatedRewards": 71509004942,
"sumEstimatedPenalties": -52422987,
"sumPriorityFees": 19311633455,
"sumBaselineMev": 4899880144,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9008353871,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 95557041390,
"sumWrongTargetPenalties": -19962423.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -2417040.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62584831923.0,
"sumLateSourcePenalties": -7754460.0,
"sumMissedAttestationRewards": 174063536.0
},
{
"day": 985,
"sumEarnings": 70353861382,
"sumEstimatedRewards": 70289485267,
"sumEstimatedPenalties": -109933471,
"sumPriorityFees": 13574679849,
"sumBaselineMev": 6958761601,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8293793082,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 90887302832,
"sumWrongTargetPenalties": -26003978.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -19357800.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62272629862.0,
"sumLateSourcePenalties": -15568364.0,
"sumMissedAttestationRewards": 352447031.0
},
{
"day": 984,
"sumEarnings": 69279029765,
"sumEstimatedRewards": 69239938549,
"sumEstimatedPenalties": -57023477,
"sumPriorityFees": 14460823853,
"sumBaselineMev": 970362493,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8035987437,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 84710216111,
"sumWrongTargetPenalties": -19388460.0,
"sumLateTargetPenalties": -5460.0,
"sumMissedAttestationPenalties": -4097860.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 61433252823.0,
"sumLateSourcePenalties": -11460106.0,
"sumMissedAttestationRewards": 263046293.0
},
{
"day": 983,
"sumEarnings": 70119743088,
"sumEstimatedRewards": 70171046005,
"sumEstimatedPenalties": -83004798,
"sumPriorityFees": 16327857620,
"sumBaselineMev": 6121330397,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 9017477978,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 92568931105,
"sumWrongTargetPenalties": -28844478.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -13163200.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 61255338001.0,
"sumLateSourcePenalties": -18498830.0,
"sumMissedAttestationRewards": 255244092.0
},
{
"day": 982,
"sumEarnings": 71838320945,
"sumEstimatedRewards": 71735220828,
"sumEstimatedPenalties": -73764264,
"sumPriorityFees": 18399433628,
"sumBaselineMev": 8332378294,
"sumMissedExecutionRewards": 80856814,
"sumConsensusBlockRewards": 9044614368,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 98570132867,
"sumWrongTargetPenalties": -23823969.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -4908860.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 62993853433.0,
"sumLateSourcePenalties": -4785928.0,
"sumMissedAttestationRewards": 214308844.0
},
{
"day": 981,
"sumEarnings": 69170743871,
"sumEstimatedRewards": 69718217491,
"sumEstimatedPenalties": -81037263,
"sumPriorityFees": 16751087201,
"sumBaselineMev": 8377124384,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8696340897,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 94298955456,
"sumWrongTargetPenalties": -38548822.0,
"sumLateTargetPenalties": -49374.0,
"sumMissedAttestationPenalties": -5117980.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 60936329191.0,
"sumLateSourcePenalties": -13469120.0,
"sumMissedAttestationRewards": 249990574.0
},
{
"day": 980,
"sumEarnings": 67774955877,
"sumEstimatedRewards": 67486593483,
"sumEstimatedPenalties": -86121052,
"sumPriorityFees": 17632932919,
"sumBaselineMev": 3623878190,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 7359748324,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 89031766986,
"sumWrongTargetPenalties": -34863530.0,
"sumLateTargetPenalties": -153608.0,
"sumMissedAttestationPenalties": -9748200.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 60501373581.0,
"sumLateSourcePenalties": -16288356.0,
"sumMissedAttestationRewards": 315871984.0
},
{
"day": 979,
"sumEarnings": 68969624532,
"sumEstimatedRewards": 69125694220,
"sumEstimatedPenalties": -92678427,
"sumPriorityFees": 25457935159,
"sumBaselineMev": 11969638268,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8779398321,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 106397197959,
"sumWrongTargetPenalties": -47274903.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -6799460.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 60501905157.0,
"sumLateSourcePenalties": -12820423.0,
"sumMissedAttestationRewards": 276544680.0
},
{
"day": 978,
"sumEarnings": 68715799142,
"sumEstimatedRewards": 68768785228,
"sumEstimatedPenalties": -103641259,
"sumPriorityFees": 17159615224,
"sumBaselineMev": 3747660259,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8369514059,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 89623074625,
"sumWrongTargetPenalties": -30373213.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -13387720.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 60568975623.0,
"sumLateSourcePenalties": -21386463.0,
"sumMissedAttestationRewards": 322394599.0
},
{
"day": 977,
"sumEarnings": 67647407987,
"sumEstimatedRewards": 67755256605,
"sumEstimatedPenalties": -79139325,
"sumPriorityFees": 17646547352,
"sumBaselineMev": 2810008816,
"sumMissedExecutionRewards": 93426969,
"sumConsensusBlockRewards": 7971601348,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 88103964155,
"sumWrongTargetPenalties": -23310248.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -6767040.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 59942856826.0,
"sumLateSourcePenalties": -10916304.0,
"sumMissedAttestationRewards": 272629654.0
},
{
"day": 976,
"sumEarnings": 67573615877,
"sumEstimatedRewards": 67524182514,
"sumEstimatedPenalties": -54578218,
"sumPriorityFees": 13540169774,
"sumBaselineMev": 2817235411,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8503008669,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 83931021062,
"sumWrongTargetPenalties": -22945481.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -4283860.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 59164461159.0,
"sumLateSourcePenalties": -6292083.0,
"sumMissedAttestationRewards": 209503573.0
},
{
"day": 975,
"sumEarnings": 66437488350,
"sumEstimatedRewards": 66373097798,
"sumEstimatedPenalties": -58055221,
"sumPriorityFees": 17052013003,
"sumBaselineMev": 3878743025,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8083532577,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 87368244378,
"sumWrongTargetPenalties": -32006325.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -5618500.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 58498556338.0,
"sumLateSourcePenalties": -5021800.0,
"sumMissedAttestationRewards": 233054225.0
},
{
"day": 974,
"sumEarnings": 66824414130,
"sumEstimatedRewards": 66851503332,
"sumEstimatedPenalties": -57752865,
"sumPriorityFees": 20969913781,
"sumBaselineMev": 6467713168,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 8587530284,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 94262041079,
"sumWrongTargetPenalties": -31376397.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -5747420.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 58294636711.0,
"sumLateSourcePenalties": -5969586.0,
"sumMissedAttestationRewards": 188969938.0
},
{
"day": 973,
"sumEarnings": 67672180612,
"sumEstimatedRewards": 67602223782,
"sumEstimatedPenalties": -67143708,
"sumPriorityFees": 20409089574,
"sumBaselineMev": 6615645878,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 7848078023,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 94696916064,
"sumWrongTargetPenalties": -19176079.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -8843900.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 59980970328.0,
"sumLateSourcePenalties": -6192389.0,
"sumMissedAttestationRewards": 158298360.0
}
],
"next": "/v0/eth/operators/Kiln/effectiveness?idType=nodeOperator&granularity=day&from=2023-07-31&size=31&filterType=datetime&include=sumEarnings&include=day&include=sumEstimatedRewards&include=sumEstimatedPenalties&include=sumPriorityFees&include=sumBaselineMev&include=sumMissedExecutionRewards&include=sumConsensusBlockRewards&include=sumMissedConsensusBlockRewards&include=sumAttestationRewards&include=sumAllRewards&include=sumMissedAttestationRewards&include=sumMissedAttestationPenalties&include=sumWrongTargetPenalties&include=sumLateTargetPenalties&include=sumWrongHeadPenalties&include=sumLateSourcePenalties"
}
Note that if you're looking to get the same data grouped by withdrawal/deposit address, you can simply input operator_id
as the address (0x..) and idType
as withdrawalAddress
or depositAddress
.
pubkeys (OR) indices
Yes
array [string] (OR) array [integer]
Array of validator pubkeys or indicies you're performing the grouped analysis for. For this example, you should put indices as 675893
675894
and 675895
filterType
Yes
string
hour
, day
and datetime
For this example, set to datetime
from
Yes
string
The most recent date for your desired timeline. In this example, it is 2023-08-31
size
Yes
integer
The number of results included per page. For this example, you should set size as 31 as we want the monthly data for August 2023.
granularity
Yes
string
The size of time increments you are looking to query. Can be day
/ week
/ month
/ quarter
/ year
.
For this example, set granularity to day
.
groupBy
Yes
string
Aggregation groupings. Can be timeWindow
if you'd like to aggregation for your desired time window or validator
if you'd like it per validator.
For this example, set it to timeWindow
.
include
Yes
array [string]
A list of field names.
To get the rewards data, you should include the following data: day
,
sumEarnings
, sumEstimatedRewards
, sumEstimatedPenalties
, sumPriorityFees
, sumBaselineMev
, sumMissedExecutionRewards
, sumConsensusBlockRewards
, sumMissedConsensusBlockRewards
, sumAllRewards
, sumAttestationRewards
, sumMissedAttestationRewards
, sumMissedAttestationPenalties
, sumWrongTargetPenalties
, sumLateTargetPenalties
, sumWrongHeadPenalties
and sumLateSourcePenalties
# Example: Obtaining daily reward metrics for the month of August 2023 for Validator group {675893,675894,675895}
curl -v -X 'GET' \
'https://api.rated.network/v0/eth/validators/effectiveness?indices=675893&indices=675894&indices=675895&granularity=day&from=2023-08-31&size=31&filterType=datetime&groupBy=timeWindow&include=sumEarnings&include=day&include=sumEstimatedRewards&include=sumEstimatedPenalties&include=sumPriorityFees&include=sumBaselineMev&include=sumMissedExecutionRewards&include=sumConsensusBlockRewards&include=sumMissedConsensusBlockRewards&include=sumAttestationRewards&include=sumAllRewards&include=sumMissedAttestationRewards&include=sumMissedAttestationPenalties&include=sumWrongTargetPenalties&include=sumLateTargetPenalties&include=sumWrongHeadPenalties&include=sumLateSourcePenalties' \
-H 'Content-Type: application/json' \
-H 'X-Rated-Network: mainnet' \
-H 'Authorization: Bearer <YOUR-TOKEN-HERE>'
import requests
url = "https://api.rated.network/v0/eth/validators/effectiveness"
params = {
"indices": [675893, 675894, 675895],
"granularity": "day",
"from": "2023-08-31",
"size": 31,
"filterType": "datetime",
"groupBy": "timeWindow",
"include": [
"sumEarnings",
"day",
"sumEstimatedRewards",
"sumEstimatedPenalties",
"sumPriorityFees",
"sumBaselineMev",
"sumMissedExecutionRewards",
"sumConsensusBlockRewards",
"sumMissedConsensusBlockRewards",
"sumAttestationRewards",
"sumAllRewards",
"sumMissedAttestationRewards",
"sumMissedAttestationPenalties",
"sumWrongTargetPenalties",
"sumLateTargetPenalties",
"sumWrongHeadPenalties",
"sumLateSourcePenalties"
]
}
headers = {
"Content-Type": "application/json",
"X-Rated-Network": "mainnet",
"Authorization": "Bearer <YOUR-TOKEN-HERE>"
}
response = requests.get(url, params=params, headers=headers)
print(response.json())
You will get the following response:
{
"page": {
"from": "2023-08-31",
"to": null,
"size": 31,
"granularity": "day",
"filterType": "datetime"
},
"total": 405,
"data": [
{
"day": 1003,
"sumPriorityFees": 0,
"sumBaselineMev": 0,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 0,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 7323094,
"sumWrongTargetPenalties": -10608.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": 0.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 7333702.0,
"sumLateSourcePenalties": 0.0,
"sumMissedAttestationRewards": 42897.0
},
{
"day": 1002,
"sumPriorityFees": 0,
"sumBaselineMev": 0,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 0,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 7352178,
"sumWrongTargetPenalties": 0.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": -8180.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 7360358.0,
"sumLateSourcePenalties": 0.0,
"sumMissedAttestationRewards": 27504.0
},
{
"day": 1001,
"sumPriorityFees": 0,
"sumBaselineMev": 0,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 0,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 7308796,
"sumWrongTargetPenalties": -21320.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": 0.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 7330116.0,
"sumLateSourcePenalties": 0.0,
"sumMissedAttestationRewards": 61341.0
},
{
"day": 1000,
"sumPriorityFees": 0,
"sumBaselineMev": 0,
"sumMissedExecutionRewards": 0,
"sumConsensusBlockRewards": 0,
"sumMissedConsensusBlockRewards": 0,
"sumAllRewards": 7296080,
"sumWrongTargetPenalties": -10673.0,
"sumLateTargetPenalties": 0.0,
"sumMissedAttestationPenalties": 0.0,
"sumWrongHeadPenalties": 0.0,
"sumAttestationRewards": 7321103.0,
"sumLateSourcePenalties": -14350.0,
"sumMissedAttestationRewards": 64617.0
},
{