Build powerful integrations with the ONLYDJS API. Access tracks, user data, and more programmatically.
Sign up for a free account and generate your API key from the dashboard.
Use your API key to authenticate and start making requests to our endpoints.
Integrate ONLYDJS data into your apps, tools, and workflows.
All API requests require authentication using an API key. Include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEYKeep your API key secure and never expose it in client-side code. Use environment variables or secure key management systems.
https://api.onlydjs.comAll endpoints are relative to this base URL. For example: https://api.onlydjs.com/api/tracks
To ensure fair usage and platform stability, we enforce the following rate limits:
Rate limit information is included in response headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset
curl -X GET "https://api.onlydjs.com/api/tracks?genre=Tech%20House&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"/api/tracksGet a list of tracks with optional filtering
genrestringFilter by genre
bpmnumberFilter by BPM
limitnumberNumber of results (default: 20)
offsetnumberPagination offset
{
"tracks": [
{
"id": "123",
"title": "Summer Vibes",
"artist": "DJ Leo Zam",
"genre": "Tech House",
"bpm": 128,
"key": "Am",
"coverUrl": "https://...",
"audioUrl": "https://...",
"downloads": 1234,
"createdAt": "2026-02-15T10:00:00Z"
}
],
"total": 500,
"limit": 20,
"offset": 0
}/api/tracks/:idGet detailed information about a specific track
idstringrequiredTrack ID
{
"id": "123",
"title": "Summer Vibes",
"artist": "DJ Leo Zam",
"artistId": "user_456",
"genre": "Tech House",
"subgenre": "Melodic",
"bpm": 128,
"key": "Am",
"duration": 360,
"coverUrl": "https://...",
"audioUrl": "https://...",
"waveformUrl": "https://...",
"downloads": 1234,
"plays": 5678,
"likes": 890,
"price": 4.99,
"tags": ["summer", "melodic", "festival"],
"createdAt": "2026-02-15T10:00:00Z"
}/api/tracks/uploadUpload a new track (requires authentication)
filefilerequiredAudio file (WAV or MP3)
titlestringrequiredTrack title
genrestringrequiredGenre
coverfileCover image
{
"success": true,
"trackId": "123",
"message": "Track uploaded successfully",
"analysisStatus": "processing"
}/api/users/:usernameGet public profile information for a DJ
usernamestringrequiredDJ username
{
"id": "user_456",
"username": "djleozam",
"displayName": "DJ Leo Zam",
"bio": "Tech House producer from Miami",
"avatarUrl": "https://...",
"coverUrl": "https://...",
"stats": {
"tracks": 45,
"downloads": 12345,
"followers": 678,
"totalEarnings": 5432.10
},
"socials": {
"instagram": "djleozam",
"soundcloud": "djleozam"
},
"joinedAt": "2025-01-15T10:00:00Z"
}If you have questions about the API or need assistance with integration, we're here to help.