API Reference
API Reference / Endpoints / Music

Upload source audio

/v1/music/uploads

Upload a large audio file for downstream music operations.

POST/v1/music/uploads
Auth: API keyBilling: FreeBehavior: SyncScopes: audio:generate
POSTSyncmultipartaudio:generate

When to use it

Use this when later music flows need a source file and you do not already have an upload id.

Behavior on success

Returns a completed payload on the normal success path.

Integration shape

Authorization model
audio:generate
Request format
multipart
Polling pattern
No polling required on the normal success path.

Request

FieldTypeRequiredDescription
filefileYesMultipart audio file.
purposestringOptionalOptional label such as `vocal` or `reference`.

Example request

POST /v1/music/uploads
const form = new FormData();
form.append('file', fileInput.files[0]);
form.append('purpose', 'reference');

const response = await fetch('https://prod-backup-backend.wubble.ai/v1/music/uploads', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.WUBBLE_API_KEY}`,
  },
  body: form,
});

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

Example response

Response shapejson
{
  "success": true,
  "data": {
    "request_id": "<uuid>",
    "status": "completed",
    "upload_audio_id": "upl_123",
    "bytes": 1245000,
    "filename": "source-audio.wav",
    "content_type": "audio/wav"
  }
}

Implementation notes

This upload itself is not a generation job and does not consume API calls in the new allowance model.

Production guidance

Pair this route with idempotency on POST requests and either request polling or webhooks whenever the response is asynchronous.
Was this page helpful?