# suno-cover

音乐翻唱（cover），可以翻唱上传的音乐，也可以翻唱suno音乐生成的音乐。

## 翻唱异步提交任务

### 接口

`https://api.modelverse.cn/v1/tasks/submit`

### 输入

| 参数                          | 类型   | 是否必选 | 描述                                                                                                                                                                                                                                                                                                          |
| :---------------------------- | :----- | :------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| model                         | string | 是       | 模型名称，此处对应suno模型版本：<br/> `suno-v4`<br/>`suno-v4.5`<br/>`suno-v4.5+`<br/>`suno-v4.5-all`<br/>`suno-v5`<br/>`suno-v5.5`|
| input.prompt                  | string | 否       | 歌词，如果歌词为空将生成纯音乐。如果有歌词则tags、title必须 |
| parameters.upload_url         | string | 是       | 要上传的可访问的音乐地址   |
| parameters.tags               | string | 否       | 音乐风格标签   |
| parameters.negative_tags      | string | 否       | 要避免的标签         |
| parameters.title              | string | 否       | 音乐提交的标题 |
| parameters.task               | string | 是       | 任务类型，此处填`cover` |

### 请求示例

⚠️ 如果您使用 Windows 系统，建议使用 Postman 或其他 API 调用工具。
```bash
curl --location --globoff 'https://api.modelverse.cn/v1/tasks/submit' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
  "model": "suno-v4.5+",
  "input": {
    "prompt": "[Verse 1]\n台阶上数着蚂蚁搬家\n凉席上画着歪扭的图画\n电风扇对着西瓜吹了一下午\n外公的摇椅吱呀呀\n\n[Pre-Chorus]\n那时候以为每个问题都有回答\n北斗星下面许的愿会开花\n午睡醒来总有好吃的绿豆沙\n时间慢得像永远长不大\n\n[Chorus]\n那年的蝉 叫了一整个暑假\n我的秘密 藏在枕头底下\n攒了很久的贴纸 贴在铅笔盒上\n以为这样就能留住 那一片晚霞\n\n[Verse 2]\n院子里的石榴树发芽\n水龙头冲走脚丫上的泥巴\n电视剧主题曲学着哼唱\n邻居家小狗叫小花\n\n[Pre-Chorus]\n那时候摔倒了哭一下就好啦\n一颗糖就能换回笑脸啊\n屋顶上看飞机拉出的白线\n猜着它要飞去哪\n\n[Chorus]\n那年的蝉 叫了一整个暑假\n我的愿望 折进星星罐里啦\n攒了很久的硬币 买一根冰棒\n甜了整个夏天 融化了也没怕\n\n[Bridge]\n后来院子拆了 石榴树没啦\n外公不在了 摇椅也搬走啦\n我打开那个星星罐\n纸条上的字 已经看不清啦\n\n[Chorus]\n那年的蝉 后来去了哪\n我的童年 停在那个暑假\n攒了很久的回忆 放在心里最底下\n偶尔拿出来 晒一晒太阳\n\n[Outro]\n蝉声停了\n绿豆沙也凉了"
  },
  "parameters": {
    "upload_url": "https://xxx.xxx.xxx/xxx.mp3",
    "negative_tags":"柔和、静谧",
    "tags": "rock, punk",
    "title": "歌曲名(Cover)",
    "task": "cover"
  }
}'
```


### 输出

| 参数           | 类型   | 描述               |
| :------------- | :----- | :----------------- |
| output.task_id | string | 异步任务的唯一标识 |
| request_id     | string | 请求的唯一标识     |

### 响应示例

```json
{
  "output": {
    "task_id": "task_id"
  },
  "request_id": "request_id"
}
```

## 查询任务状态

### 接口

`https://api.modelverse.cn/v1/tasks/status?task_id=<task_id>`

### 请求示例

```shell
curl --location 'https://api.modelverse.cn/v1/tasks/status?task_id=<task_id>' \
--header 'Authorization: <YOUR_API_KEY>'
```

### 输出

| 参数                 | 类型    | 描述                                              |
| :------------------- | :------ | :------------------------------------------------ |
| output.task_id       | string  | 异步任务的唯一标识                                |
| output.task_status   | string  | 任务状态：`Pending`、`Running`、`Success`、`Failure` |
| output.urls          | array   | 视频结果的 URL 列表                               |
| output.submit_time   | integer | 任务提交时间戳                                    |
| output.finish_time   | integer | 任务完成时间戳                                    |
| output.error_message | string  | 失败时返回的错误信息                              |
| request_id           | string  | 请求的唯一标识                                    |

### 响应示例（成功）

```json
{
  "output": {
    "task_id": "task_id",
    "task_status": "Success",
    "urls": ["https://xxxxx/xxxx.mp3"],
    "submit_time": 1756959000,
    "finish_time": 1756959050
  },
  "usage": {
  },
  "request_id": ""
}
```

### 响应示例（失败）

```json
{
  "output": {
    "task_id": "task_id",
    "task_status": "Failure",
    "submit_time": 1756959000,
    "finish_time": 1756959019,
    "error_message": "error_message"
  },
  "request_id": ""
}
```
