Skip to main content

Create Media

Create a new media record (song).

Example Request

POST /v1/media
{
  "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

{
  "success": true,
  "message": "Media created",
  "data": {
    "mediaId": "media-123",
    "name": "My Song"
  }
}

Get Media

Retrieve media by ID.

Example Request

GET /v1/media/{mediaId}

Response

{
    "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

PUT /v1/media/{mediaId}
{
  "name": "Updated Song Name",
  "imageUrl": "https://placehold.co/1000x1000",
  "audioUrl": "https://example.com/updated-song.mp3",
}

Response

{
  "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",
  }
}