Create Media
Create a new media record (song).Example Request
Copy
POST /v1/media
Copy
{
"mediaBundleId": "bundle-123",
"name": "My Song",
"isrc": "US-ABC-12-34567",
"imageUrl": "https://placehold.co/1000x1000",
"audioUrl": "https://example.com/song.mp3",
"videoUrls": [
"https://example.com/video-1.mp4",
"https://example.com/video-2.mp4"
],
"youtubeUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"spotifyUrl": "https://open.spotify.com/track/1234567890",
"appleMusicUrl": "https://music.apple.com/us/album/1234567890",
}
Response
Copy
{
"success": true,
"message": "Media created",
"data": {
"mediaId": "media-123",
"name": "My Song"
}
}
Get Media
Retrieve media by ID.Example Request
Copy
GET /v1/media/{mediaId}
Response
Copy
{
"success": true,
"message": "Media found",
"data": {
"name": "My Song",
"mediaId": "media-id",
"artistId": "artist-id",
"mediaBundleId": "media-bundle-id",
"isrc": "US-ABC-12-34567",
"isActive": false,
"audioAssets": {
"DEFAULT": "audio-asset-id"
},
"videoAssets": [
{
"aspectRatio": "9x16",
"id": "video-asset-id"
}
],
"imageAssetId": "image-asset-id",
"textAssetsIds": {},
"youtubePluginId": "youtube-plugin-id",
"spotifyPluginId": "spotify-plugin-id",
"applePluginId": "apple-plugin-id",
}
}
Update Media
Example Request
Copy
PUT /v1/media/{mediaId}
Copy
{
"name": "Updated Song Name",
"imageUrl": "https://placehold.co/1000x1000",
"audioUrl": "https://example.com/updated-song.mp3",
}
Response
Copy
{
"success": true,
"message": "Media found",
"data": {
"name": "My Song",
"mediaId": "media-id",
"artistId": "artist-id",
"mediaBundleId": "media-bundle-id",
"isrc": "US-ABC-12-34567",
"isActive": false,
"audioAssets": {
"DEFAULT": "updated-audio-asset-id"
},
"videoAssets": [
{
"aspectRatio": "9x16",
"id": "video-asset-id"
}
],
"imageAssetId": "image-asset-id",
"textAssetsIds": {},
"youtubePluginId": "youtube-plugin-id",
"spotifyPluginId": "spotify-plugin-id",
"applePluginId": "apple-plugin-id",
}
}