Skip to main content
POST
/
releases
/
{id}
/
tracks
/
{trackId}
/
media
/
file
Upload Media File to Track
curl --request POST \
  --url https://api.royalti.io/releases/{id}/tracks/{trackId}/media/file \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form file='@example-file'
{
  "success": true,
  "data": {
    "cloudId": "550e8400-e29b-41d4-a716-446655440000",
    "cloudUrl": "https://storage.royalti.io/files/audio.mp3",
    "type": "audio",
    "name": "my-track.mp3",
    "isLink": false,
    "releasePath": "tenant123/releases/release456/tracks/track789/file.mp3",
    "metadata": {
      "duration": 213.5,
      "bitrate": "320",
      "sampleRate": "44100",
      "channels": "2",
      "codec": "mp3",
      "fileSize": 1048576,
      "mimeType": "audio/mpeg",
      "processedAt": "2023-11-07T05:31:56Z",
      "linkValidated": true
    }
  },
  "message": "Media uploaded successfully"
}
This endpoint requires authentication. Include your Bearer token in the Authorization header.

Description

This endpoint allows uploading a single media file to a specific track. Only audio and video files are allowed for tracks. Each track can have only one audio or video file. The file is stored temporarily and transferred to permanent storage upon approval.

Code Examples

const response = await fetch('https://api.royalti.io/releases/example-id/tracks/example-id/media/file', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${token}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({})
});

const data = await response.json();
console.log(data);

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Path Parameters

id
string<uuid>
required

Release ID

trackId
string<uuid>
required

Track ID

Body

multipart/form-data
file
file
required

Single audio or video file

Response

Success

success
boolean
Example:

true

data
object
message
string
Example:

"Media uploaded successfully"