Account Rewards
Per-account staking rewards and validator commissions.
The Account Rewards API returns per-account staking rewards and validator commissions for institutional customers. It supplements onchain reward data with commission and account-specific commercial parameters. It currently supports dYdX, Hyperliquid, and Aleo.
Production base URL: https://rewards-api.chorus.one.
Authentication
Pass your API key in the X-API-KEY header on every request. The key implicitly scopes responses to the wallets mapped to your account. To generate and manage keys, see Rewards Dashboard API Keys.
Workflow
Call
GET /account-rewards/v1/accountonce to discover which wallets your key can read and the pre-built URLs for their rewards.Follow the
reward_urlsreturned from step 1 to fetch daily rewards (/v1/delegator_rewards/...) or commissions (/v1/validator_rewards/...). These are public API paths, so resolve them againsthttps://rewards-api.chorus.one.Each rewards response is paginated by date. When
next_urlis non-null, resolve it againsthttps://rewards-api.chorus.oneto fetch the next page.
Pagination
Rewards endpoints paginate around a 100-row target, but pages always break on a day boundary. If the 100th and 101st rows fall on the same day, the page is trimmed back so the day is not split, so a non-final page may contain fewer than 100 rows. When more data is available, the response includes a next_url; when it is null, the final page has been returned.
Account
The entrypoint to the api. Get the list of wallets and networks that the authenticated API key has access to, along with urls for querying rewards for those wallets. Use reward_urls from the response instead of crafting the urls for rewards endpoints manually.
Successful Response
GET /account-rewards/v1/account HTTP/1.1
x-api-key: YOUR_API_KEY
Accept: */*
Successful Response
{
"wallets": [
{
"address": "text",
"network_name": "text",
"wallet_type": "text",
"entity_name": "text",
"reward_urls": [
"text"
]
}
]
}Delegator rewards
Rewards for delegations. Use reward_urls from /v1/account endpoint instead of crafting these urls manually.
The delegator address. See /v1/account reward_urls for available addresses
The symbol for reward token. See /v1/account reward_urls for values for particular networks
Network name. Supported networks: dYdX, Hyperliquid, Aleo
End of day timestamp (ISO-8601 with time zone). From the beginning if not set
2024-01-01T00:00:00End of day timestamp (ISO-8601 with time zone). Up to most recent entry if not set
2100-01-01T00:00:00Successful Response
Opaque url to the rest of the queried data, null if all of the data was returned. Exact url path is unspecified and are subject to change.
Type of the rewards array content. Currently always ARV1Rewards, but kept for future extensibility
Validation Error
GET /account-rewards/v1/delegator_rewards/{network}/{wallet_address}/{base_symbol} HTTP/1.1
x-api-key: YOUR_API_KEY
Accept: */*
{
"next_url": "text",
"entry_type": "text",
"rewards": [
{
"end_of_day": "2026-01-01T00:00:00.000Z",
"delegator_address": "text",
"validator_address": "text",
"network_name": "text",
"stake_base_symbol": "text",
"reward_base_symbol": "text",
"stake_price_usd": "text",
"reward_price_usd": "text",
"stake_amount": "text",
"daily_rewards": "text",
"withdrawals": "text",
"commission_amount": "text",
"service_fee": "text",
"rebates": "text",
"events": [
{
"tx_hash": "text",
"event_name": "text"
}
],
"service_fee_pct": "text"
}
]
}Validator rewards
Commissions for validators. Use reward_urls from /v1/account endpoint instead of crafting these urls manually.
The validator address. See /v1/account reward_urls for available addresses
The symbol for reward token. See /v1/account reward_urls for values for particular networks
Network name. Supported networks: dYdX, Hyperliquid, Aleo
End of day timestamp (ISO-8601 with time zone). From the beginning if not set
2024-01-01T00:00:00ZEnd of day timestamp (ISO-8601 with time zone). Up to most recent entry if not set
2100-01-01T00:00:00ZSuccessful Response
Opaque url to the rest of the queried data, null if all of the data was returned. Exact url path is unspecified and are subject to change.
Type of the rewards array content. One of ['ARV1AleoCommissions', 'ARV1Commissions', 'ARV1HyperliquidCommissions']
Validation Error
GET /account-rewards/v1/validator_rewards/{network}/{wallet_address}/{base_symbol} HTTP/1.1
x-api-key: YOUR_API_KEY
Accept: */*
{
"next_url": "text",
"entry_type": "text",
"rewards": [
{
"end_of_day": "2026-01-01T00:00:00.000Z",
"validator_address": "text",
"network_name": "text",
"stake_base_symbol": "text",
"commission_base_symbol": "text",
"stake_price_usd": "text",
"commission_price_usd": "text",
"voting_power": "text",
"daily_commissions": "text",
"withdrawals": "text",
"service_fee_pct": "text",
"service_fee": "text",
"events": [
{
"tx_hash": "text",
"event_name": "text"
}
]
}
]
}Last updated
Was this helpful?