Get Leaderboard
Scores
Get Leaderboard
Get top-ranked users by ZKScore
GET
Get Leaderboard
Overview
Retrieve the global leaderboard showing top-ranked users by their ZKScore. This endpoint supports filtering by category, chain, and time period, making it ideal for displaying competitive rankings and discovering top performers.Parameters
Number of results to return (default: 50, max: 100)
Number of results to skip for pagination (default: 0)
Filter by specific scoring category
activity- Transaction activity leadersvolume- Highest volume tradersage- Oldest walletsdiversity- Most diverse usersgovernance- Top DAO participantssocial- Highest social reputationrisk- Best risk managementloyalty- Most loyal userstotal- Overall score (default)
Filter by specific chain ID (optional, defaults to all chains)
Time period for ranking
24h- Last 24 hours7d- Last 7 days30d- Last 30 days (default)all- All time
Response
Indicates if the request was successful
Array of top-ranked users
Examples
Response Example
Use Cases
1. Display Top Users
Show top 10 users in your app:2. Category-Specific Leaderboards
Show leaders in different categories:3. Paginated Leaderboard
Implement pagination for large leaderboards:4. User Rank Lookup
Find a specific user’s position:5. Trending Users
Track users with biggest rank improvements:Best Practices
1. Cache Leaderboard Data
Leaderboards don’t change frequently:2. Implement Infinite Scroll
Load more users as user scrolls:3. Highlight Current User
Show user’s position in leaderboard:4. Real-time Updates
Poll for leaderboard updates:Visualization Examples
Leaderboard Table
Podium Display
Related Endpoints
- Get Score - Get user’s ZKScore
- Get Score Breakdown - Detailed breakdown
- Get Score History - Historical data
Troubleshooting
”Invalid category”
Cause: Unsupported category value. Solution:- Use supported categories:
activity,volume,age,diversity,governance,social,risk,loyalty,total - Check for typos
”Limit exceeds maximum”
Cause: Requested limit is too high. Solution:- Maximum limit is 100
- Use pagination for larger datasets
- Request multiple pages if needed
”Leaderboard temporarily unavailable”
Cause: Leaderboard is being recalculated. Solution:- Wait a few minutes and try again
- Leaderboards are recalculated periodically
- Use cached data if available
Performance Tips
- Cache Results: Leaderboards change slowly, cache for 5+ minutes
- Use Appropriate Limits: Don’t request more data than needed
- Implement Pagination: Load data in chunks for better UX
- Debounce Updates: Don’t poll too frequently (30s minimum)
Rate Limits
Leaderboard requests are subject to rate limits:- Free tier: 30 requests per minute
- Starter tier: 150 requests per minute
- Professional tier: 600 requests per minute
- Enterprise tier: Custom limits