Suno AI 音乐生成 API 快速跑通:从配置到首次调用的完整指南
【免费下载链接】Suno-APICreate Music in Seconds with SunoAPI.项目地址: https://gitcode.com/GitHub_Trending/su/Suno-API
Suno-API 是一个把 Suno 音乐生成服务封装成标准 HTTP API 的开源项目,让你能用任意语言或工作流直接调用它。本教程带你从环境配置一路走到第一次成功生成歌曲。
它解决什么问题
Suno 官方没有开放公开 API,想在自己的项目里使用它的音乐生成能力,过去只能靠浏览器手动点。这个项目把这套手动操作变成了可一行代码调用的服务:发一个 prompt 请求,拿回歌词或成品歌曲。它用 Python 和 FastAPI 编写,MIT 许可证,代码非常精简——main.py 定义全部路由,utils.py 负责底层请求,cookie.py 负责凭证维护。它最有价值的特性是内置 token 保活:服务启动后每 5 秒自动续期一次 token,你不用操心会话中途过期。
从零到跑通的完整搭建流程
- 克隆仓库,进入项目目录。
git clone https://gitcode.com/GitHub_Trending/su/Suno-API cd Suno-API- 配置环境文件。把 .env.example 复制为
.env,填三个值:BASE_URL已预置官方接口地址,不用动;SESSION_ID和COOKIE需要从浏览器获取——登录 Suno 官网后打开开发者工具(F12)的 Network 面板,找到任意一条tokens请求,从请求 URL 里复制 session ID,从请求头里复制完整 Cookie 字符串。
- 安装依赖,项目依赖很少,一条 pip 命令即可。
pip3 install -r requirements.txt- 启动服务,本地运行监听 8000 端口;偏好容器化的话,
docker compose build && docker compose up也可以,端口映射定义在 docker-compose.yml。
uvicorn main:app启动后在浏览器打开 http://127.0.0.1:8000/docs,能看到自动生成的接口文档,所有端点和请求体都可以在线调试:
实战调用示例
先调描述模式生成,只需给一句描述,其余交给模型:
curl -X POST http://127.0.0.1:8000/generate/description-mode \ -H "Content-Type: application/json" \ -d '{"gpt_description_prompt": "A Blues song about a person who is feeling happy and optimistic about the future.", "make_instrumental": false, "mv": "chirp-v3-0"}'接口会返回生成任务信息,再拿返回的 id 轮询GET /feed/{aid},即可拿到 audio_url,下载这个 URL 就是 mp3 成品。想要完全掌控的话,用/generate自定义模式传入歌词、标题和风格标签(字段定义在 schemas.py);歌词生成同样是单次调用,POST /generate/lyrics/带上 prompt 即可。可直接复制的完整请求样例见 test.py。
常见问题与避坑
- 接口全部返回鉴权错误:通常是
.env里的SESSION_ID或COOKIE没拷全,或者获取凭证后又在浏览器重新登录过,旧会话被作废。重新进官网,从浏览器再复制一遍,然后重启服务。 - 端口 8000 被占用:默认端口是 8000,被占用时 uvicorn 会直接报 address in use。换用
uvicorn main:app --port 8001换端口,或释放掉占用进程;走 docker compose 的话记得同步改端口映射。 - 生成失败或额度用尽:生成消耗的是你 Suno 账号的每日 credits,额度不足时请求会失败。随时调用
GET /get_credits查看剩余credits_left,为 0 就等下一个计费周期。
进阶方向与生态联动
接入 Agent / 工作流:所有端点都是标准 HTTP POST,可以直接挂进 GPTs、n8n 等智能体框架,作为一个"音乐生成"工具节点。一个常见玩法是两段式流水线:先用/generate/lyrics/让模型写出歌词,再喂给/generate谱成歌曲。
二次开发:代码结构极简单,新增接口只需在 main.py 加一个路由、在 utils.py 写请求函数,token 由 deps.py 统一注入,你只关心业务逻辑。
组合内容生产管线:test.py 里的轮询取音频、下载逻辑是现成的骨架,可以扩展成"歌词→歌曲→本地落盘"的自动化流程,再搭配图像生成类 API,一次产出带封面图的完整内容。
cookie 配好之后,剩下的都是标准 HTTP 调用——这就是这个项目省事的地方。
【免费下载链接】Suno-APICreate Music in Seconds with SunoAPI.项目地址: https://gitcode.com/GitHub_Trending/su/Suno-API
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考