Saltar para o conteúdo principal
POST
/
v1
/
music
/
generations
/
coverFlowMusic
curl --request POST \
  --url https://api.apimart.ai/v1/music/generations/coverFlowMusic \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "flowmusic",
    "clip_id": "abc123-def456",
    "instruction": "Rearranjar esta música em estilo jazz",
    "strength": 0.5
  }'
import requests

url = "https://api.apimart.ai/v1/music/generations/coverFlowMusic"

payload = {
    "model": "flowmusic",
    "clip_id": "abc123-def456",
    "instruction": "Rearranjar esta música em estilo jazz",
    "strength": 0.5
}

headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
const url = "https://api.apimart.ai/v1/music/generations/coverFlowMusic";

const payload = {
  model: "flowmusic",
  clip_id: "abc123-def456",
  instruction: "Rearranjar esta música em estilo jazz",
  strength: 0.5
};

const headers = {
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
};

fetch(url, {
  method: "POST",
  headers: headers,
  body: JSON.stringify(payload)
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KWXVD0E653EZ9FWD2SD9NNB6"
    }
  ]
}
{
  "error": {
    "message": "strength must be between 0 and 1",
    "type": "invalid_request",
    "param": "",
    "code": "invalid_request"
  }
}
{
  "error": {
    "message": "Saldo insuficiente",
    "type": "invalid_request",
    "param": "",
    "code": "quota_not_enough"
  }
}
{
  "error": {
    "message": "A capacidade do grupo atual está saturada, tente novamente mais tarde",
    "type": "rate_limit_error",
    "param": "",
    "code": "rate_limit_error"
  }
}
curl --request POST \
  --url https://api.apimart.ai/v1/music/generations/coverFlowMusic \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "flowmusic",
    "clip_id": "abc123-def456",
    "instruction": "Rearranjar esta música em estilo jazz",
    "strength": 0.5
  }'
import requests

url = "https://api.apimart.ai/v1/music/generations/coverFlowMusic"

payload = {
    "model": "flowmusic",
    "clip_id": "abc123-def456",
    "instruction": "Rearranjar esta música em estilo jazz",
    "strength": 0.5
}

headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
const url = "https://api.apimart.ai/v1/music/generations/coverFlowMusic";

const payload = {
  model: "flowmusic",
  clip_id: "abc123-def456",
  instruction: "Rearranjar esta música em estilo jazz",
  strength: 0.5
};

const headers = {
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
};

fetch(url, {
  method: "POST",
  headers: headers,
  body: JSON.stringify(payload)
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01KWXVD0E653EZ9FWD2SD9NNB6"
    }
  ]
}
{
  "error": {
    "message": "strength must be between 0 and 1",
    "type": "invalid_request",
    "param": "",
    "code": "invalid_request"
  }
}
{
  "error": {
    "message": "Saldo insuficiente",
    "type": "invalid_request",
    "param": "",
    "code": "quota_not_enough"
  }
}
{
  "error": {
    "message": "A capacidade do grupo atual está saturada, tente novamente mais tarde",
    "type": "rate_limit_error",
    "param": "",
    "code": "rate_limit_error"
  }
}

Autenticação

Authorization
string
obrigatório
Todos os endpoints exigem autenticação via Bearer TokenObtenha sua API Key:Acesse a página de gerenciamento de API Keys para obter sua API KeyAo usar, adicione ao cabeçalho da requisição:
Authorization: Bearer YOUR_API_KEY

Parâmetros da Requisição

model
string
obrigatório
Nome do modelo, sempre passe "flowmusic" (não diferencia maiúsculas de minúsculas)
clip_id
string
obrigatório
Identificador único da música de origem, proveniente de result.music[].clip_id de uma tarefa concluída com sucesso
instruction
string
obrigatório
Instrução de edição do CoverExemplo: "Rearranjar esta música em estilo jazz"
strength
number
obrigatório
Intensidade da ediçãoFaixa de valores: 0 ~ 1; quanto maior, maior a alteração
title
string
Título da música após o Cover
seed
string
Semente aleatória, usada para reproduzir resultados

Resposta

code
integer
Código de status da resposta, 200 em caso de sucesso
data
array
Array de dados retornados

Casos de Uso

Cenário 1: Rearranjar a música inteira em estilo jazz

{
  "model": "flowmusic",
  "clip_id": "abc123-def456",
  "instruction": "Rearranjar esta música em estilo jazz",
  "strength": 0.5
}

Cenário 2: Rearranjar após importar um áudio externo

Primeiro importe o áudio externo via Enviar Áudio para obter um clip_id e depois faça o Cover:
{
  "model": "flowmusic",
  "clip_id": "1db3a20f-4ddc-44e8-8c9c-6c9093c16ffe",
  "instruction": "Transformar em estilo jazz",
  "strength": 0.6
}
Consultar o Resultado da TarefaO Cover / rearranjo é uma tarefa assíncrona; após o envio, um task_id é retornado. Use o endpoint Obter Status da Tarefa para consultar o progresso e o resultado da geração. O produto do Cover é um novo clip_id; use o novo clip_id nas operações subsequentes.

Exemplo de Resultado de Tarefa Concluída

Exemplo de resposta da consulta (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.apimart.ai/audio/flowmusic_ef3d804e.m4a",
          "wav_url": "https://cdn.apimart.ai/audio/flowmusic_ef3d804e.wav",
          "image_url": "https://cdn.apimart.ai/image/flowmusic_ef3d804e_cover.jpg"
        }
      ]
    }
  }
}