Saltar para o conteúdo principal
GET
/
v1
/
music
/
tasks
/
{task_id}
curl --request GET \
  --url https://api.apimart.ai/v1/music/tasks/task_01K8AYYM6R03TGZ3Q2P0TZVNPX?language=en \
  --header 'Authorization: Bearer <token>'
import requests

task_id = "task_01K8AYYM6R03TGZ3Q2P0TZVNPX"
url = f"https://api.apimart.ai/v1/music/tasks/{task_id}"

headers = {
    "Authorization": "Bearer <token>"
}

params = {
    "language": "en"
}

response = requests.get(url, headers=headers, params=params)

print(response.json())
const taskId = "task_01K8AYYM6R03TGZ3Q2P0TZVNPX";
const url = `https://api.apimart.ai/v1/music/tasks/${taskId}?language=en`;

const headers = {
  "Authorization": "Bearer <token>"
};

fetch(url, {
  method: "GET",
  headers: headers
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error("Error:", error));
{
  "code": 200,
  "data": {
    "id": "task_01K8AYYM6R03TGZ3Q2P0TZVNPX",
    "status": "completed",
    "progress": 100,
    "created": 1783413241,
    "completed": 1783413352,
    "actual_time": 111,
    "cost": 0.06,
    "credits_cost": 0.6,
    "result": {
      "music": [
        {
          "clip_id": "a41aade4-993e-4d28-b56f-d97e7ef7167c",
          "title": "My Song",
          "duration_seconds": "181.70666667",
          "audio_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.m4a",
          "wav_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.wav"
        }
      ]
    }
  }
}
{
  "error": {
    "message": "task not found",
    "type": "invalid_request",
    "param": "task_id",
    "code": "task_not_found"
  }
}
{
  "error": {
    "message": "A capacidade do grupo atual está saturada, tente novamente mais tarde",
    "type": "rate_limit_error",
    "param": "",
    "code": "rate_limit_error"
  }
}
curl --request GET \
  --url https://api.apimart.ai/v1/music/tasks/task_01K8AYYM6R03TGZ3Q2P0TZVNPX?language=en \
  --header 'Authorization: Bearer <token>'
import requests

task_id = "task_01K8AYYM6R03TGZ3Q2P0TZVNPX"
url = f"https://api.apimart.ai/v1/music/tasks/{task_id}"

headers = {
    "Authorization": "Bearer <token>"
}

params = {
    "language": "en"
}

response = requests.get(url, headers=headers, params=params)

print(response.json())
const taskId = "task_01K8AYYM6R03TGZ3Q2P0TZVNPX";
const url = `https://api.apimart.ai/v1/music/tasks/${taskId}?language=en`;

const headers = {
  "Authorization": "Bearer <token>"
};

fetch(url, {
  method: "GET",
  headers: headers
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error("Error:", error));
{
  "code": 200,
  "data": {
    "id": "task_01K8AYYM6R03TGZ3Q2P0TZVNPX",
    "status": "completed",
    "progress": 100,
    "created": 1783413241,
    "completed": 1783413352,
    "actual_time": 111,
    "cost": 0.06,
    "credits_cost": 0.6,
    "result": {
      "music": [
        {
          "clip_id": "a41aade4-993e-4d28-b56f-d97e7ef7167c",
          "title": "My Song",
          "duration_seconds": "181.70666667",
          "audio_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.m4a",
          "wav_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.wav"
        }
      ]
    }
  }
}
{
  "error": {
    "message": "task not found",
    "type": "invalid_request",
    "param": "task_id",
    "code": "task_not_found"
  }
}
{
  "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 do Flow Music exigem autenticação por Bearer TokenObtenha sua API Key:Acesse a página de gerenciamento de API Keys para obter sua API KeyAdicione ao cabeçalho da requisição:
Authorization: Bearer YOUR_API_KEY

Parâmetros de Caminho

task_id
string
obrigatório
O ID da tarefa retornado após o envio de uma tarefa do Flow Music
O ID da tarefa vem de data[0].task_id na resposta do envio.

Parâmetros de Consulta

language
string
padrão:"zh"
Idioma das mensagens de erro e de alguns textos informativosValores permitidos: zh, en, ja, ko

Campos da Resposta

code
integer
Código de status da resposta, 200 em caso de sucesso
data
object
Detalhes da tarefa

Estrutura do Resultado

Tarefas de Música

Geração de música, extensão, substituição de trecho, rearranjo cover, separação de faixas, envio de áudio, download de áudio e renderização de vídeo geralmente retornam um array result.music.
{
  "result": {
    "music": [
      {
        "clip_id": "a41aade4-993e-4d28-b56f-d97e7ef7167c",
        "audio_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.m4a",
        "wav_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4.wav",
        "video_url": "https://cdn.apimart.ai/video/flowmusic_a41aade4.mp4",
        "file_url": "https://cdn.apimart.ai/audio/flowmusic_a41aade4_stems.zip"
      }
    ]
  }
}

Tarefas de Letras

A geração de letras retorna um array result.lyrics.
{
  "result": {
    "lyrics": [
      {
        "title": "Bleached",
        "lyrics": "[Intro]\n(Check)\n(One two)\n..."
      }
    ]
  }
}

Observações de Uso

Todos os endpoints de envio do Flow Music são tarefas assíncronas. Após o envio bem-sucedido, primeiro obtenha o task_id e depois chame este endpoint para consultar o status da tarefa; quando status for completed, leia os resultados gerados em result.