Rewards: Developer Resources
This page is your central hub for all the tools, links, and data sources you need to integrate Morpho rewards into your application.
Quick Reference
| Resource | Link |
|---|---|
| Morpho API | api.morpho.org/graphql |
| Merkl API | api.merkl.xyz/v4 |
| Legacy Rewards | rewards-legacy.morpho.org |
| Example Code | github.com/morpho-org/merkl-morpho-recipe |
| Merkl Docs | docs.merkl.xyz |
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)
Legacy Rewards (Deprecated)
Smart Contracts
Merkl Distributor Contracts
All Merkl smart contract addresses, categorized by chain are listed here.
Key Functions:claim(address user, address[] tokens, uint256[] amounts, bytes32[][] proofs)- Claim rewards
Morpho URD Contracts (Legacy)
- 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
- Merkl + Morpho Recipe:
- GitHub: morpho-org/merkl-morpho-recipe
- A complete Next.js demo showing:
- Vault metrics with rewards
- User claimable rewards (Merkl)
- Claim implementations
- TypeScript best practices
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
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
Need Help?
If you can't find what you're looking for, reach out via:
- Chat: help.morpho.org
