Rewards: Developer Resources
This page is your central hub for all the tools, links, and data sources you need to integrate Morpho rewards (both Merkl and Legacy URD) into your application.
APIs
Morpho API (Recommended for Vault/Market Rewards)
The Morpho API provides integrated rewards data alongside vault and market information.
- GraphQL Playground: api.morpho.org/graphql
- Documentation: Morpho API Docs
- Rewards Queries:
- Fetch vault APY + rewards APR
- Get market reward rates (supply, borrow, collateral)
- Combine base yield and rewards in one query
- Historical data and time-series queries
Merkl API (Primary for User Rewards)
Merkl's REST API for current reward programs and user claimable amounts.
- Base URL:
https://api.merkl.xyz/v4/
- Documentation: docs.merkl.xyz/integrate-merkl/app
- Key Endpoints:
- User Rewards:
GET /userRewards?user={address}&chainId={chainId}
- Claim Data:
GET /claim?user={address}&chainId={chainId}
- User Rewards:
- Fetch user claimable rewards (current programs)
- Get Merkle proofs for claiming
- Real-time reward accrual (updates every 8 hours)
Morpho Rewards API (Legacy URD Programs)
The Rewards API for historical Morpho URD rewards.
- Base URL:
https://rewards.morpho.org/v1/
- API Docs: rewards.morpho.org/docs
- Key Endpoints:
- User Rewards:
GET /users/{address}/rewards
- User Distributions:
GET /users/{address}/distributions
- All Programs:
GET /programs
- Stats:
GET /rewards/stats
- User Rewards:
- Fetch historical/legacy rewards
- Get URD claim data (Merkle proofs)
- Query past reward programs
Smart Contracts
Merkl Distributor Contracts
Mainnet (Ethereum):- Address:
0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae
- See Merkl's documentation for all chain deployments
claim(address user, address[] tokens, uint256[] amounts, bytes32[][] proofs)
- Claim rewards
Morpho URD Contracts
Mainnet (Ethereum):- URD Address:
0x330eefa8a787552DC5cAd3C3cA644844B1E61Ddb
- See Rewards Addresses for all deployments
claim(address account, address reward, uint256 claimable, bytes32[] proof)
- Claim rewardsclaimed(address account, address reward) view returns (uint256)
- Check claimed amount
Contract ABIs
Merkl Distributor ABI:[
{
"inputs": [
{ "name": "user", "type": "address" },
{ "name": "tokens", "type": "address[]" },
{ "name": "amounts", "type": "uint256[]" },
{ "name": "proofs", "type": "bytes32[][]" }
],
"name": "claim",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]
[
{
"inputs": [
{ "name": "account", "type": "address" },
{ "name": "reward", "type": "address" },
{ "name": "claimable", "type": "uint256" },
{ "name": "proof", "type": "bytes32[]" }
],
"name": "claim",
"outputs": [{ "name": "amount", "type": "uint256" }],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "name": "account", "type": "address" },
{ "name": "reward", "type": "address" }
],
"name": "claimed",
"outputs": [{ "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
}
]
Code Examples & Repositories
Official Examples
- Merkl + Morpho Recipe (Recommended):
- GitHub: morpho-org/merkl-morpho-recipe
- A complete Next.js demo showing:
- Vault metrics with rewards
- User claimable rewards (Merkl + URD)
- Claim implementations
- TypeScript best practices
Community Examples
- Morpho Lite App: morpho-org/morpho-lite-apps
- Fallback App: morpho-org/morpho-blue-offchain-public
SDKs & Tools
Morpho SDKs
While there's no dedicated rewards SDK, you can use Morpho's core SDKs for related functionality:
@morpho-org/blue-sdk
: Core SDK for vaults and markets@morpho-org/blue-sdk-viem
: Viem-based fetchers@morpho-org/simulation-sdk
: Simulate transactions@morpho-org/bundler-sdk-viem
: Bundle multiple actions (including claims)
Learn More: Morpho SDKs Documentation
GraphQL Clients
For querying the Morpho API:
- graphql-request: Lightweight GraphQL client
- Apollo Client: Full-featured GraphQL client
- urql: Flexible GraphQL client
Web3 Libraries
For claiming rewards onchain:
- viem: Modern TypeScript web3 library (recommended)
- ethers.js: Popular web3 library
- web3.js: Classic web3 library
External Documentation
Merkl
- Official Docs: docs.merkl.xyz
- Integration Guide: docs.merkl.xyz/integrate-merkl/app
Morpho
- Developer Hub: /tools/
- API Documentation: /tools/offchain/api/rewards/
Onchain Data Sources
- Morpho Subgraphs: /tools/offchain/subgraphs/
- Merkl Subgraphs: See Merkl docs
Tutorials & Guides
Getting Started
Step-by-Step Tutorials
Advanced
Support Channels
For Integrators
- Technical Questions: help.morpho.org
For Reward Issuers
- Program Creation Help: Merkl Docs
Monitoring & Analytics
Dashboards
- Merkl Dashboard: merkl.xyz - View active campaigns
- Morpho App: app.morpho.org - See rewards on vaults/markets
Analytics Tools
- Dune Analytics: Morpho Dashboards
- DefiLlama: Track TVL and yields across Morpho
Governance & Updates
Morpho Governance
- Snapshot: snapshot.box/#/s.eth
Migration Information
- MIP 111: Snapshot Proposal - Migration to Merkl
Quick Reference
Resource | Link |
---|---|
Morpho API | api.morpho.org/graphql |
Merkl API | api.merkl.xyz/v4 |
Rewards API | rewards.morpho.org |
Example Code | github.com/morpho-org/merkl-morpho-recipe |
Merkl Docs | docs.merkl.xyz |
URD Contracts | github.com/morpho-org/universal-rewards-distributor |
Need Help?
If you can't find what you're looking for, reach out via:
- Chat: help.morpho.org