歌曲媒体下载与试听 API

更新于 2026-09-15 · Suno-API 团队

接口说明

这一组接口把「拿媒体地址」和「真正下载文件」分开:

计费:全部免费。下载与试听只读取平台已托管的媒体,不调用 Suno,不扣费。

推荐模型:suno-v6。可用 suno-v6、suno-v6-wild 或 suno-v6-mini。

认证

参数名 类型 必填 说明
Authorization string 是 Bearer YOUR_API_KEY(GET /api/music/download 同时接受登录态)
Content-Type string 是 application/json

支持的媒体类型(kind)

kind 说明
song 音频(mp3 是它的别名,默认值;响应里统一回写为 song)
wav WAV 文件,需要先调用WAV 生成/获取 API 准备好
video 视频(mp4 是别名)
midi 分轨的 MIDI,仅对已完成的分轨轨道有效,见MIDI 获取 API
cover 封面图(image 是别名)
lyrics 歌词文本,只能用 download-file 取,download-url 不返回歌词地址
timestamped_lyrics 时间轴歌词(别名 lrc)

1)获取媒体地址

curl -X POST https://www.suno-api.io/api/music/download-url \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_id": "song_id", "kind": "song"}'
{
  "code": 200,
  "message": "success",
  "data": {
    "song_id": "song_id",
    "kind": "song",
    "url": "https://media.suno-api.io/assets/song_id-mp3.mp3",
    "nav_url": "https://media.suno-api.io/assets/song_id-mp3.mp3?...&response-content-disposition=attachment..."
  }
}
参数名 类型 必填 说明
song_id string 是 自己的歌曲 ID
kind string 否 见上表,默认 song
refresh boolean 否 传 true 会强制重新准备资源(例如 CDN 上文件被回收后重新生成)

url 用于播放或自行转存;nav_url 带 Content-Disposition: attachment, 适合直接赋给浏览器地址栏下载(部分国内手机浏览器不支持 blob 下载时使用)。

⚠️ 地址有效期:7 天,请及时转存

url / nav_url 指向平台的对象存储,默认在 7 天后失效(文件到期回收,旧地址会返回 404)。请在这 7 天内把文件转存到自己的存储。

过期后不必重新生成歌曲:重新调用 POST /api/music/download-url(或把 refresh 传 true)即可拿到该歌曲新的有效地址,本组接口本身免费、不额外计费。

2)直接下载单文件

curl -X POST https://www.suno-api.io/api/music/download-file \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_id": "song_id", "kind": "song"}' \
  -o song.mp3

响应体是文件流(不是 JSON),Content-Disposition 已经带好文件名。 歌词与时间轴歌词只能用这个接口取。

3)打包下载

curl -X POST https://www.suno-api.io/api/music/download-all \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_ids": ["song_id_1", "song_id_2"]}' \
  -o songs.zip

song_id(单个)与 song_ids(批量,最多 50 条)二选一。响应体是 ZIP 文件流。

4)稳定下载地址

GET /api/music/download?song_id=<id>&kind=<kind> 是歌曲响应里直接给出的下载入口, 鉴权同时支持 API Key 与登录态,行为等价于 download-file,适合写死进客户端或第三方播放器。

5)生成中试听

curl -X POST https://www.suno-api.io/api/music/generation-stream-url \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_ids": ["song_id_1", "song_id_2"]}'
{
  "code": 200,
  "message": "success",
  "data": {
    "items": [
      {
        "song_id": "song_id_1",
        "url": "https://media.suno-api.io/assets/song_id_1-mp3.mp3",
        "expires_at": 0,
        "content_type": "audio/mpeg",
        "playable_until_completed": false,
        "mode": "mp3",
        "ranges": true
      }
    ]
  }
}
参数名 类型 必填 说明
song_id string 否 单个歌曲 ID
song_ids string[] 否 批量,最多 24 条(一批自动分轨的轨道数上限)

playable_until_completed 为 true 表示这是生成中的临时试听地址,歌曲完成后请改用正式地址; 单首失败时该项会带 error 字段,其余歌曲照常返回。

注意事项

开始接入

注册后即可在控制台创建 API Key,0.6 元一次固定生成 2 首,下载不限次数。

免费注册 查看完整文档