Get API Key Get API
Docs

Cover Rearrangement

Flow Music rearranges an entire song into a new style (cover / restyle), with strength controlling the editing intensity

Request example

curl --request POST \
  --url https://api.openveer.com/v1/music/generations/coverFlowMusic \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "flowmusic",
    "clip_id": "abc123-def456",
    "instruction": "Rearrange this song in jazz style",
    "strength": 0.5
  }'

Response example

{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KWXVD0E653EZ9FWD2SD9NNB6"
    }
  ]
}

Authentication

Authorization string

All endpoints require Bearer Token authentication

Get your API Key:

Visit the API Key management page to get your API Key

Add it to the request header:

Authorization: Bearer YOUR_API_KEY

Request Parameters

model string

Model name, must be "flowmusic" (case-insensitive)

clip_id string

Unique identifier of the source music, from a successful task's result.music[].clip_id

instruction string

Cover editing instruction

Example: "Rearrange this song in jazz style"

strength number

Editing intensity

Range: 0 \~ 1; higher values mean larger changes

title string

Title of the covered music

seed string

Random seed, used to reproduce results

Response

code integer

Response status code, 200 on success

data array
Array of returned data
status string

Task status, submitted upon initial submission

task_id string

Unique task identifier, used to query task status and results

Use Cases

Scenario 1: Rearrange the whole song in jazz style

{
  "model": "flowmusic",
  "clip_id": "abc123-def456",
  "instruction": "Rearrange this song in jazz style",
  "strength": 0.5
}

Scenario 2: Import external audio, then rearrange

First import external audio via Upload Audio to obtain a clip_id, then run the Cover:

{
  "model": "flowmusic",
  "clip_id": "1db3a20f-4ddc-44e8-8c9c-6c9093c16ffe",
  "instruction": "Turn it into jazz style",
  "strength": 0.6
}
Note

Query Task Results

Cover rearrangement is an asynchronous task; a task_id is returned after submission. Use the Get Task Status endpoint to query generation progress and results. The Cover output is a new clip_id; use the new clip_id for subsequent operations.

Completed Task Result Example

Query response example (GET /v1/music/tasks/{task_id}):

{
  "code": 200,
  "data": {
    "id": "task_01KWXVD0E653EZ9FWD2SD9NNB6",
    "status": "completed",
    "progress": 100,
    "created": 1783413244,
    "completed": 1783413315,
    "actual_time": 71,
    "cost": 0.048,
    "credits_cost": 0.48,
    "result": {
      "music": [
        {
          "clip_id": "ef3d804e-fa97-402f-ba17-4ff08270159b",
          "title": "Untitled (Cover)",
          "duration_seconds": "178.03733333",
          "create_time": "2026-07-07T08:34:58.112190Z",
          "lyrics": "[Verse 1]\nWaking up to the morning light,\n...",
          "lyrics_id": "c302d603-81b6-552f-8122-e512928d6aa1",
          "lyrics_timing_markers": [[10, 12], [212, 36]],
          "audio_url": "https://cdn.openveer.com/audio/flowmusic_ef3d804e.m4a",
          "wav_url": "https://cdn.openveer.com/audio/flowmusic_ef3d804e.wav",
          "image_url": "https://cdn.openveer.com/image/flowmusic_ef3d804e_cover.jpg"
        }
      ]
    }
  }
}

This documentation is built and hosted on Mintlify, a developer documentation platform.