Overview
The BeatPass API enforces to ensure fair usage and platform stability. Different endpoint categories have different limits based on their resource intensity.Global Rate Limit
Global API Limit
300 requests/minute
All API endpoints are subject to a global rate limit of 300 requests per minute per client. Route-specific limits below may impose stricter thresholds on individual endpoints.
Rate Limit Categories
Different endpoint categories have different rate limits. The API applies the most restrictive applicable limit.General API Endpoints
General API Endpoints
Standard content endpoints (tracks, artists, albums, search, genres) are subject to the global rate limit.
Media Endpoints
Media Endpoints
Audio and image endpoints have stricter per-minute limits to prevent abuse.
Analytics Endpoints
Analytics Endpoints
Analytics and dashboard endpoints have dedicated rate limits appropriate for their resource intensity.
Write Operations
Write Operations
Endpoints that create or modify data (uploads, purchases, messages) have stricter limits.
Authentication endpoints have strict rate limits to prevent brute-force attacks. Excessive failed attempts will result in temporary lockout.
Rate Limit Format
Rate limits are expressed as requests per time window:- Requests: Maximum number of requests allowed
- Window: Time period (typically 1 minute)
Rate Limit Headers
Responses include standard rate limit headers:Maximum requests allowed in the current window.
Number of requests remaining in the current window.
Unix timestamp when the rate limit window resets.
When Limits Are Exceeded
Response
Handling Rate Limits
Best Practices
Optimize Request Patterns
Use Batch Endpoints
Use Batch Endpoints
Where available, use batch endpoints to fetch multiple resources in a single request instead of individual calls.
Cache Responses
Cache Responses
Cache API responses locally to reduce redundant calls. Most data does not change frequently.
Paginate Efficiently
Paginate Efficiently
Request appropriate page sizes. Don’t fetch more data than needed.
Debounce User Input
Debounce User Input
For search-as-you-type features, debounce input by 300ms+ before triggering API calls.
Monitoring Usage
Track Rate Limit Status
Common Patterns That Trigger Limits
Polling too frequently
Polling too frequently
Problem: High frequency polling drains your quota.Solution: Use reasonable intervals (30+ seconds) and cache responses locally.
Individual resource calls in loops
Individual resource calls in loops
Problem: Fetching resources one at a time in a loop.Solution: Use batch endpoints where available, or paginated listing endpoints.
Multiple concurrent requests
Multiple concurrent requests
Problem: Firing many requests simultaneously.Solution: Stagger requests and use combined endpoints where available.
Error Recovery
When you hit a rate limit:- Don’t retry immediately — This wastes your remaining quota
- Check the
Retry-Afterheader — Wait the specified duration - Review access patterns — Identify optimization opportunities
- Contact support — If legitimate usage requires higher limits
Next Steps
API Reference
See all available endpoints.
Authentication
Understand API authentication.