Skip to main content

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:
{
  "message": "Human-readable error description",
  "errors": {
    "field_name": ["Specific validation error"]
  }
}

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

401 Wrong email or password combination.Resolution: Verify your credentials. Use “Forgot Password” if needed.
403 Account has been suspended.Resolution: Contact contact@beatpass.ca for assistance.
403 Email verification is pending.Resolution: Check your inbox for the verification link. Request a new one if needed.
401 Your authentication token has expired.Resolution: Generate a new token from Account Settings → Developers.
401 No valid authentication token found.Resolution: Include a valid Bearer token in your request. Contact support if your token has expired.

Track & Upload Errors

422 File exceeds maximum size (256 MB).Resolution: Compress or reduce file size before uploading.
422 Unsupported audio format.Resolution: Use WAV, FLAC, or AIFF. MP3 files are not accepted.
422 Track duration must be at least 1 second.Resolution: Ensure the uploaded file has a valid duration.
422 Title, BPM, or Genre not provided.Resolution: Fill in all required metadata fields.

Purchase & Licensing Errors

Purchase Flow

ErrorCodeCauseResolution
Track not for sale400No license configuredContact producer
Already purchased409User already owns licenseCheck purchases
Exclusive already sold410Exclusive no longer availableTrack sold exclusively
Price changed409Price updated since page loadRefresh and retry
Checkout expired400Took too long to completeStart new checkout

Payment Errors

ErrorCodeCauseResolution
Payment failed402Card declinedTry different payment method
Card declined402Issuer declined transactionContact card issuer
Insufficient funds402Not enough balanceUse different card
Invalid card422Card number invalidCheck card details
Expired card422Card past expirationUpdate card info
Processing error500Stripe communication issueRetry in a moment

License Errors

ErrorCodeCauseResolution
License not found404Invalid license IDVerify license ID
License revoked410License was revokedContact support
Download expired403Download link timed outGet new download link

Beat Request Errors

Creation

ErrorCodeCauseResolution
No tokens remaining429Monthly token allowance exhaustedWait for monthly reset or upgrade
Insufficient tokens429Not enough tokens for chosen durationChoose a shorter duration or wait
Description too short422Under minimum length (10 characters)Add more detail
Reference track required422Missing reference track URLProvide a valid URL
Invalid reference track422URL format invalidProvide a valid YouTube, Spotify, or SoundCloud link

Submission

ErrorCodeCauseResolution
Request not found404Invalid request IDVerify ID
Request expired410Duration window (24/48/72h) has closedFind an active request
Duplicate submission409Same track already submittedChoose a different track
Submission limit reached422Producer already submitted 5 tracksMaximum tracks per request reached
Duplicate audio detected409Audio fingerprint matches existing submissionTry a different track
Track not platform-hosted422Track is an external link, not uploadedUpload the track to the platform first
Fingerprint not completed422Track hasn’t finished audio processingWait for processing to complete
Not track owner403Producer doesn’t own or collaborate on trackSubmit only your own tracks
Self-submission blocked403Cannot submit to your own requestFind another user’s request

Deletion & Renewal

ErrorCodeCauseResolution
Not request owner403Only the creator can delete or renewVerify ownership
Request still active409Cannot renew a request that hasn’t expiredWait for expiration or delete
Renewal window expired410Request expired more than 30 days agoCreate a new request instead
No token for renewal429No tokens available to renewWait for monthly reset or upgrade

Producer Program Request Errors

These errors apply to Backstage request creation and submission eligibility checks.
ErrorCodeCauseResolution
Unauthenticated401Missing or invalid auth tokenAuthenticate with a valid Bearer token
Forbidden403Missing backstageRequests.create permissionGrant/create permission for the user
backstage_request_pending409User already has a pending requestWait for the pending request decision before submitting again
backstage_request_revoked409User has a revoked request in historyDirect the user to the contact page (/contact) to appeal
Backstage create submissions are blocked globally per user when a pending or revoked request exists, regardless of request type (become-artist, verify-artist, or claim-artist). If both statuses exist, pending takes precedence.

Audio Recon Errors

ErrorCodeCauseResolution
Unauthorized401No valid authentication tokenInclude a Bearer token in your request
Forbidden403You are not a credited producer on this trackOnly credited producers and admins can view Audio Recon matches
Not Found404Track does not existVerify the track ID is correct
Audio Recon matches are only available for tracks with a verified artist profile. If the track’s primary artist is not verified, the response will return an empty matches array with artist_verified: false.

Messaging Errors

Sending Messages

ErrorCodeCauseResolution
Recipient not found404Invalid user IDVerify recipient
User blocked you403Recipient blocked senderCannot message this user
You blocked user403Sender blocked recipientUnblock to message
Message too long422Message exceeds limitShorten message
Rate limited429Too many messagesWait before sending more

Conversation

ErrorCodeCauseResolution
Conversation not found404Invalid conversation IDVerify ID
Not a participant403User not in conversationCannot access

Collection & Library Errors

Saves & Playlists

ErrorCodeCauseResolution
Library full429Maximum saved items reachedRemove old items
Playlist full429Maximum tracks per playlistCreate new playlist
Playlist limit reached429Maximum playlists reachedDelete unused playlists
Track already saved409Already in libraryNo action needed
Track already in playlist409Duplicate in playlistTrack exists

Collaborative Playlists

ErrorCodeCauseResolution
Max editors reached429Maximum collaboratorsRemove editor first
Invitation expired410Invitation expiredSend new invitation
Already invited409Pending invitation existsWait for response
Cannot re-invite yet429Cooldown period activeWait to re-invite

Social & Following Errors

Following

ErrorCodeCauseResolution
Already following409Already followedNo action needed
Not following404Cannot unfollow if not followingCheck following status
Follow limit reached429Maximum following reachedUnfollow some accounts
Follow rate limited429Too many followsWait before following more

Reposts

ErrorCodeCauseResolution
Already reposted409Track already repostedNo action needed
Repost limit reached429Repost limit exceededWait for limit reset
Cannot repost own track400Self-repost not allowedN/A

Radio Errors

ErrorCodeCauseResolution
Skip limit reached429Skip limit exceededWait for reset
Station not found404Invalid stationChoose valid station
Concurrent stream limit429Already streaming elsewhereStop other stream

Rate Limiting

Rate Limit Response

{
  "message": "Too Many Attempts.",
  "retry_after": 60
}

Rate Limit Headers

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1700000060
Retry-After: 60

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 An unexpected server-side issue occurred.Resolution: Retry the request. If persistent, contact support with the timestamp and endpoint.
503 Platform is undergoing maintenance.Resolution: Check the status page for updates.
504 Request took too long to process.Resolution: Retry with a smaller payload or try again later.
Server errors (5xx) are logged automatically. If you encounter persistent issues, contact support with the approximate time and endpoint details.

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 your Bearer token is valid and included in the Authorization header.
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.

API Overview

API fundamentals.

Rate Limits

Throttling details.
Last modified on February 26, 2026