API Reference
API Reference / Endpoints / Music

Extend songs

/v1/music/songs/extend

Continue an existing song from a chosen point in the track.

POST/v1/music/songs/extend
Auth: API keyBilling: Consumes 1 API callBehavior: AsyncScopes: audio:generate
POSTAsyncjsonaudio:generate

When to use it

Use this when you want to add a new section, lengthen a track, or continue from a precise timestamp.

Behavior on success

Returns 202 Accepted with a request_id. Poll the status endpoint or use webhooks.

Integration shape

Authorization model
audio:generate
Request format
json
Polling pattern
Poll status if the route returns processing.

Request

FieldTypeRequiredDescription
song_idstringYesExisting song identifier.
lyricsstringYesNew lyrical or continuation material.
extend_atnumberYesMillisecond offset into the track where extension should begin.

Example request

POST /v1/music/songs/extend
const response = await fetch('https://prod-backup-backend.wubble.ai/v1/music/songs/extend', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.WUBBLE_API_KEY}`,
    'Idempotency-Key': crypto.randomUUID(),
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "song_id": "song_123",
  "lyrics": "Lift the chorus one more time and open it up",
  "extend_at": 45000
}),
});

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

Example response

Response shapejson
{
  "success": true,
  "data": {
    "request_id": "<uuid>",
    "status": "processing",
    "estimated_seconds": 75
  }
}

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?