
API Documentation
Easily search or generate playlists from YouTube, SoundCloud, Spotify, Mixcloud, Bandcamp, Vimeo, custom files, and more — all powered by the Mixider API and AI.
Welcome to the API documentation. Our API is available at /api/v1 and provides the endpoints described below.
Getting Started
Obtaining an API Key
To use the API, follow these steps to obtain an API key:
- Create an account on Mixider
- Once logged in, go to your “Settings” page
- Scroll to the “Applications” section
- Click on “Create Application”
- Once the application is created, retrieve the
App key— that is your API key
- Keep your API key secure and never share it publicly
- You can revoke API keys at any time from the Settings page
Authentication
All API requests require authentication using an API key in the Authorization header:
Authorization: Bearer <YOUR_API_KEY>Media Objects
Media objects are the core of our API. They represent various media items available on different platforms, managed by Mixider.
Each media object contains the following fields:
| Name | Type | Description |
|---|---|---|
| id | String | Unique ID on Mixider for the media item. |
| title | String | Title visible on the platform. |
| author | String | Author (or media publisher) visible on the platform. |
| image | String | Thumbnail image URL. |
| platform | youtubesoundcloudmixcloudbandcampvimeo | Platform where the media comes from. |
| url | String | Media public URL. |
| duration | Number | Media duration in seconds. Good to know In some cases the media may be cropped (e.g. limited to a 30-second preview) due to licensing or copyright restrictions that are independent of Mixider. |
Endpoints
The API provides several endpoints for interacting with the media library. All endpoints are available at /api/v1 and require an API key.
Search Media
Search for media items based on specified criteria.
POST /api/v1/media/searchRequest
Request body should be a JSON object with the following fields:
| Name | Type | Default | Description |
|---|---|---|---|
| platform | urlyoutubesoundcloudspotifymixcloudbandcampvimeo | — |
|
| query | String | — | Search query term or URL. |
Response
Response body will be a JSON array of maximum 30 s.
Example
Request
POST /api/v1/media/search
Authorization: Bearer <YOUR_API_KEY>Response
[
{
"id": "mixcloud-Q2xvdWRjYXN0OjE2ODA2NzI4Nw==",
"title": "Cantus Orbis: Some Examples of Medieval Drone - Vol.1",
"author": "Michael Tanner",
"image": "https://thumbnailer.mixcloud.com/unsafe/320x320/extaudio/2/3/b/a/53ae-b8ef-4634-8010-dc644fe52a33.png",
"platform": "mixcloud",
"url": "https://www.mixcloud.com/cloisters/an-introduction-to-medieval-drone-volume-1/",
"duration": 2594
},
{
"id": "soundcloud-40644970",
"title": "Changed The Way You Kiss Me feat. Ludacris (Remix)",
"author": "Example",
"image": "https://i1.sndcdn.com/artworks-000020386682-cmwg7x-large.jpg",
"platform": "soundcloud",
"url": "https://soundcloud.com/example/changed-the-way-you-kiss-me",
"duration": 208.153
},
{
"id": "youtube-_G1soKzXJUo",
"title": "Example - 'All Night' (OUT NOW)",
"author": "Example",
"image": "https://i.ytimg.com/vi/_G1soKzXJUo/hq720.jpg?sqp=-oaymwE2CNAFEJQDSFXyq4qpAygIARUAAIhCGAFwAcABBvABAfgB_gmAAtAFigIMCAAQARh_IEgoHzAP&rs=AOn4CLC7dlyNjEWL2r5_ubReCLIhY5rR6A",
"platform": "youtube",
"url": "https://youtube.com/watch?v=_G1soKzXJUo",
"duration": 166
},
// More items...
]Errors
Common error responses include:
400 Bad Request: Invalid request parameters or missing required fields.401 Unauthorized: Invalid or missing API key.404 Not Found: The requested resource was not found.500 Internal Server Error: An unexpected error occurred on the server.
Generate PlaylistAI friendly
Generate a playlist based on an AI prompt.
POST /api/v1/playlists/generateRequest
Request body should be a JSON object with the following fields:
| Name | Type | Default | Description |
|---|---|---|---|
| query | String | — | AI prompt. Maximum 300 characters. Good to know This feature is limited to some tokens per day. Your real-time usage is visible in the “Settings” page. |
| mode | smartplatformmanual | — |
|
| mainPlatform | youtubesoundcloudmixcloudbandcampvimeo | — | Main platform to search on, if mode is set to platform. |
Response
Response body will be a JSON object with the following fields:
| Name | Type | Description | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| title | String | Playlist generated title. | ||||||||||||||||||
| description | String | Playlist generated short description. | ||||||||||||||||||
| items | Array |
|
Example
Request
POST /api/v1/playlists/generate
Authorization: Bearer <YOUR_API_KEY>Response (mode set to smart or platform)
{
"title": "Vintage Jazz Beach Playlist",
"description": "Relaxing jazz classics for a perfect beach day",
"items": [
{
"results": [
{
"id": "soundcloud-255954857",
"title": "Moon River",
"author": "Louis Armstrong",
"image": "https://i1.sndcdn.com/artworks-JzzT3cRAO6e0-0-large.jpg",
"platform": "soundcloud",
"url": "https://soundcloud.com/louisarmstrongofficial/moon-river",
"duration": 30
},
{
"id": "youtube-s61-e29Vr6Q",
"title": "Stan Getz feat. Astrud Gilberto - The Girl From Ipanema (Official Video)",
"author": "Verve Records",
"image": "https://i.ytimg.com/vi/s61-e29Vr6Q/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLATIEtmI0o9XTVp7oob-HcSCnigcA",
"platform": "youtube",
"url": "https://youtube.com/watch?v=s61-e29Vr6Q",
"duration": 168
},
// More items...
]
}
]
}Response (mode set to manual)
{
"title": "Vintage Jazz Beach Playlist",
"description": "Relaxing jazz classics for a perfect beach day",
"items": [
{
"title": "Moon River",
"author": "Louis Armstrong",
"results": [
{
"id": "youtube-WQDaop9onHE",
"url": "https://youtube.com/watch?v=WQDaop9onHE",
"image": "https://i.ytimg.com/vi/WQDaop9onHE/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCCudeX4TV7gHZ4J68x0dyloUx1iA",
"title": "Louis Armstrong - Moon River (Audio)",
"author": "Louis Armstrong",
"duration": 176,
"platform": "youtube"
},
{
"id": "soundcloud-255954857",
"url": "https://soundcloud.com/louisarmstrongofficial/moon-river",
"image": "https://i1.sndcdn.com/artworks-JzzT3cRAO6e0-0-large.jpg",
"title": "Moon River",
"author": "Louis Armstrong",
"duration": 30,
"platform": "soundcloud"
}
]
},
// More items...
]
}Errors
Common error responses include:
400 Bad Request: Invalid request parameters or missing required fields.401 Unauthorized: Invalid or missing API key.404 Not Found: The requested resource was not found.422 Unprocessable Entity: The request was well-formed but could not be followed due to semantic errors.429 Too Many Requests: Rate limit exceeded. You have reached the maximum number of requests allowed.500 Internal Server Error: An unexpected error occurred on the server.