音乐

音乐

根据描述,或根据你自己的歌词和风格,生成完整的歌曲。每次请求只需一份价格,即可生成 2 个版本,通常约一分钟内完成。

POST/v1/music
模型ID每首歌曲价格

生成歌曲

import os
import time
import requests
api = "https://api.zurelay.com/v1"
headers = {"Authorization": f"Bearer {os.environ['ZURELAY_API_KEY']}"}
song = requests.post(f"{api}/music", headers=headers, json={
"model": "suno-v6",
"prompt": "A cheerful acoustic folk song about morning coffee",
}).json()
while song["status"] in ("queued", "in_progress"):
time.sleep(5)
song = requests.get(f"{api}/music/{song['id']}", headers=headers).json()
for track in song["tracks"]:
print(track["title"], track["url"])

歌曲在后台生成。POST /v1/music 会立即返回一个 id;每隔几秒用 GET /v1/music/{id} 查询一次,直到状态变为 completed 或 failed。

参数

发送 prompt 来描述一首歌,或者用 lyrics 和 style 自己写。两者不要同时发送。

modelstring必填
表格中的音乐模型 ID。
promptstring
描述你想要的歌曲,最多 200 个字符。
lyricsstring
自定义歌词,最多 3,000 个字符。可使用 [Verse]、[Chorus] 等标签标记段落。
stylestring
曲风、情绪、乐器或人声描述,最多 120 个字符。
exclude_stylestring
需要排除的风格或乐器,最多 120 个字符。
titlestring
歌曲标题,最多 80 个字符。
instrumentalboolean
无人声。可搭配 prompt 使用,或搭配 style 且不带 lyrics。

结果

tracks 中的每一项
indexnumber
这是第几个版本,从 1 开始。下载时可将其用作 track。
titlestring
歌曲标题。如果不填,模型会自动生成一个。
duration_secondsnumber
这段音频的时长。
stylestring
模型所使用的风格,以它自己的话来描述。
lyricsstring
演唱的歌词。纯音乐请留空。
urlstring
MP3 链接,24 小时内有效。如需新链接,请重新获取该歌曲。

下载作品

GET/v1/music/{id}/content?track=1

以流式方式返回 MP3。歌曲会保留 30 天。

列出你的歌曲

GET/v1/music

按时间倒序排列。使用 limit(最多 100)和 after(歌曲 id)进行分页。

使用须知

  • 只有在歌曲成功交付时才会扣费,失败则不收费。
  • 如果请求中指明了知名艺术家,或使用了他人的歌词,可能会被拒绝,并返回错误码 content_policy。请改为描述你想要的声音风格。
  • 歌曲时长不固定,通常从不到一分钟到约三分半钟不等,且无法自行设置。

非 Suno 官方 API

Suno 本身没有公开的 API,Zurelay 与 Suno 也没有任何关联。请求通过第三方算力运行,因此可用性可能会发生变化。发布或出售歌曲之前,请先查看 Suno 的服务条款。

有疑问,或发现内容缺失?联系我们的支持团队,我们会通过邮件回复,通常只需一分钟。