Overview
This catalog documents common errors you may encounter across BeatPass API endpoints, along with their meanings and suggested resolutions.Error Response Format
All errors follow this structure:HTTP Status Codes
400
Bad Request Malformed syntax
401
Unauthorized Auth required
403
Forbidden Not permitted
404
Not Found Doesn’t exist
409
Conflict State conflict
422
Unprocessable Validation failed
429
Too Many Rate limited
500
Server Error Internal issue
Authentication Errors
Invalid credentials
Invalid credentials
401
Wrong email or password combination.Resolution: Verify your credentials. Use “Forgot Password” if needed.
Account disabled
Account disabled
403
Account has been suspended.Resolution: Contact [email protected] for assistance.
Email not verified
Email not verified
403
Email verification is pending.Resolution: Check your inbox for the verification link. Request a new one if needed.
Session expired
Session expired
401
Your session has timed out.Resolution: Re-authenticate by logging in again.
CSRF token mismatch
CSRF token mismatch
419
Security token is missing or invalid.Resolution: Refresh the page and try again. This resets the CSRF token.
Unauthenticated
Unauthenticated
401
No valid session cookie found.Resolution: Log in to establish a session.
Track & Upload Errors
- Upload Validation
- Processing
- Access
File too large
File too large
422
File exceeds maximum size (~250MB).Resolution: Compress or reduce file size before uploading.
Invalid file format
Invalid file format
422
Unsupported audio format.Resolution: Use WAV, FLAC, or AIFF. MP3 files are not accepted.
Duration issues
Duration issues
422
Track too short (<30s) or too long (>15min).Resolution: Ensure track is between 30 seconds and 15 minutes.
Missing required fields
Missing required fields
422
Title, BPM, or Genre not provided.Resolution: Fill in all required metadata fields.
Purchase & Licensing Errors
Purchase Flow
| Error | Code | Cause | Resolution |
|---|---|---|---|
Track not for sale | 400 | No license configured | Contact producer |
Already purchased | 409 | User already owns license | Check purchases |
Exclusive already sold | 410 | Exclusive no longer available | Track sold exclusively |
Price changed | 409 | Price updated since page load | Refresh and retry |
Checkout session expired | 400 | Took too long to complete | Start new checkout |
Payment Errors
| Error | Code | Cause | Resolution |
|---|---|---|---|
Payment failed | 402 | Card declined | Try different payment method |
Card declined | 402 | Issuer declined transaction | Contact card issuer |
Insufficient funds | 402 | Not enough balance | Use different card |
Invalid card | 422 | Card number invalid | Check card details |
Expired card | 422 | Card past expiration | Update card info |
Processing error | 500 | Stripe communication issue | Retry in a moment |
License Errors
| Error | Code | Cause | Resolution |
|---|---|---|---|
License not found | 404 | Invalid license ID | Verify license ID |
License revoked | 410 | License was revoked | Contact support |
Download expired | 403 | Download link timed out | Get new download link |
Beat Request Errors
Creation
| Error | Code | Cause | Resolution |
|---|---|---|---|
Request limit reached | 429 | Max active requests | Close old requests first |
Title is required | 422 | Missing title | Provide title |
Description too short | 422 | Under minimum length | Add more detail |
Response
| Error | Code | Cause | Resolution |
|---|---|---|---|
Request not found | 404 | Invalid request ID | Verify ID |
Request closed | 410 | Request no longer accepting responses | Find open request |
Already responded | 409 | User already submitted response | Cannot submit twice |
Request expired | 410 | Past 30-day limit | Request auto-expired |
Status Changes
| Error | Code | Cause | Resolution |
|---|---|---|---|
Cannot close | 403 | Not request owner | Only owner can close |
Already fulfilled | 409 | Request already completed | No action needed |
Messaging Errors
Sending Messages
| Error | Code | Cause | Resolution |
|---|---|---|---|
Recipient not found | 404 | Invalid user ID | Verify recipient |
User blocked you | 403 | Recipient blocked sender | Cannot message this user |
You blocked user | 403 | Sender blocked recipient | Unblock to message |
Message too long | 422 | Over 5,000 characters | Shorten message |
Rate limited | 429 | Too many messages | Wait before sending more |
Conversation
| Error | Code | Cause | Resolution |
|---|---|---|---|
Conversation not found | 404 | Invalid conversation ID | Verify ID |
Not a participant | 403 | User not in conversation | Cannot access |
Collection & Library Errors
Saves & Playlists
| Error | Code | Cause | Resolution |
|---|---|---|---|
Library full | 429 | Max saved items (10,000) | Remove old items |
Playlist full | 429 | Max tracks per playlist (500) | Create new playlist |
Playlist limit reached | 429 | Max playlists (100) | Delete unused playlists |
Track already saved | 409 | Already in library | No action needed |
Track already in playlist | 409 | Duplicate in playlist | Track exists |
Collaborative Playlists
| Error | Code | Cause | Resolution |
|---|---|---|---|
Max editors reached | 429 | 10 collaborators max | Remove editor first |
Invitation expired | 410 | 7-day expiry passed | Send new invitation |
Already invited | 409 | Pending invitation exists | Wait for response |
Cannot re-invite yet | 429 | 24-hour cooldown | Wait to re-invite |
Social & Following Errors
Following
| Error | Code | Cause | Resolution |
|---|---|---|---|
Already following | 409 | Already followed | No action needed |
Not following | 404 | Cannot unfollow if not following | Check following status |
Follow limit reached | 429 | Max 5,000 following | Unfollow some accounts |
Follow rate limited | 429 | Too many follows | Wait before following more |
Reposts
| Error | Code | Cause | Resolution |
|---|---|---|---|
Already reposted | 409 | Track already reposted | No action needed |
Repost limit reached | 429 | 100/day or 20/hour | Wait for limit reset |
Cannot repost own track | 400 | Self-repost not allowed | N/A |
Radio Errors
| Error | Code | Cause | Resolution |
|---|---|---|---|
Skip limit reached | 429 | 6 skips/hour | Wait for reset |
Station not found | 404 | Invalid station | Choose valid station |
Concurrent stream limit | 429 | Already streaming elsewhere | Stop other stream |
Rate Limiting
Rate Limit Response
Rate Limit Headers
Handling Rate Limits
Exponential Backoff
Wait, then double the delay on each retry attempt.
Check Headers
Monitor
X-RateLimit-Remaining before making requests.Queue Requests
Space out API calls to stay under limits.
Cache Responses
Reduce redundant calls by caching data locally.
Server Errors (5xx)
500 - Internal Server Error
500 - Internal Server Error
500
An unexpected server-side issue occurred.Resolution: Retry the request. If persistent, contact support with the timestamp and endpoint.
503 - Service Unavailable
503 - Service Unavailable
504 - Gateway Timeout
504 - Gateway Timeout
504
Request took too long to process.Resolution: Retry with a smaller payload or try again later.
Troubleshooting Checklist
1
Check Error Message
Read the
message field for human-readable explanation.2
Check Validation Errors
Review
errors object for field-specific issues.3
Verify Authentication
Ensure session is valid and cookies are included.
4
Check Rate Limits
Review
X-RateLimit-* headers.5
Retry with Backoff
For transient errors, wait and retry.
6
Contact Support
For persistent issues, provide error details and timestamps.