Wallets API

What staking rewards did this stake account earn in recent epochs?

The SOL a stake account (or a validator's vote account) was paid in each of the last 5 completed epochs, with the commission and the stake's delegation.

GET/api/external/wallet-analysis/staking-rewards/{chain}/{address}

What it returns

The rewards paid to a stake account, or to a validator's vote account, in each of the last 5 completed epochs, read from the chain, with the stake's delegation. An epoch with no reward (the stake was not yet active, or already deactivated) has amount: null; a vote account can be paid a real 0. An epoch whose rewards are still being paid out is left out, so rewards can be shorter. A wallet address is refused: rewards are paid to the stake account, not to its owner.

Chains

  • Solana SOL

Request

Send your key in the x-dex-data-key header. Replace each <placeholder> with a real value.

curl -H "x-dex-data-key: $DEXDATA_API_KEY" \
  "https://api.dexdata.io/api/external/wallet-analysis/staking-rewards/SOL/<address>"
Parameters
ParameterDescription
chain

path · string · required

The chain the stake account lives on. SOL is served; BNB, ETH, BASE, STABLE, RHC and ARC return 400. CELO, ARB, OP and SCROLL return 400 here.
address

path · string · required

A stake account address, or the vote account of a validator.

Response fields

A JSON response. Every field is always present; null means the value could not be established, never zero.

Response fields of What staking rewards did this stake account earn in recent epochs?
FieldTypeDescription
addressstringThe account asked about.
kindstringstake for a stake account, vote for a validator's vote account.
delegationobject | nullThe stake account's delegation; null for a vote account or a stake account not delegated.
delegation.voterstringThe vote account of the validator the stake is delegated to.
delegation.stakenumberSOL delegated.
delegation.activationEpochintegerThe epoch the delegation was made in; 0 for a stake active since genesis.
delegation.deactivationEpochinteger | nullThe epoch the stake was deactivated in; null while it is not deactivating.
currentEpochintegerThe epoch in progress, whose rewards are not paid yet.
rewardsobject[]One row per completed epoch covered, newest first.
rewards[].epochinteger
rewards[].amountnumber | nullSOL paid for the epoch; null when none was paid.
rewards[].postBalancenumber | nullThe account's SOL balance right after the payment; null when none was paid.
rewards[].commissionnumber | nullThe validator's commission for the epoch, in percent; null when not paid or not said.
rewards[].effectiveSlotinteger | nullThe slot the reward was paid in; null when none was paid.
totalnumber | nullSOL paid over rewards; null when nothing was paid in any of them.

Start building with DexData today

Sign in, create a key and make your first call in a minute. Free credits every month, and you only pay for calls that succeed.

Get a free API key