docs / endpoints / cover
POST/v1/cover

Reimagine an existing track in a different style: same melody and structure, new genre, instrumentation, or energy. Returns 202 Accepted with a generation object of type: "cover", then completes asynchronously.

$Billing: 11 credits per cover — two variations included. Free with a sandbox key.

## Request body

audio_urlrequiredstringPublic URL of the source track to cover.
stylerequiredstringThe style to restyle the track into, e.g. "acoustic folk, warm, fingerpicked guitar". Up to 1,000 characters.
promptstringExtra direction (or replacement lyrics), up to 5,000 characters.
titlestringTrack title, up to 100 characters.
negative_tagsstringStyles to avoid, up to 500 characters.
instrumentalbooleanCover without vocals. Default: false.
vocal_gender"m" | "f"Preferred vocal gender.
audio_weightnumberHow closely to follow the source audio, 0–1. Higher stays truer to the original.
modelstringGeneration model, default v5. See models.
webhook_urlstringHTTPS URL to POST the completed generation to. See webhooks.

## Example request

POST /v1/coverbash
curl https://api.songapi.dev/v1/cover \
  -H "Authorization: Bearer $SONGAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "audio_url": "https://cdn.songapi.dev/gen_h2vJk8…/clip_1.mp3",
    "style": "acoustic folk, warm, fingerpicked guitar"
  }'

Poll GET /v1/generations/:id or use a webhook, exactly as with generate.