Bỏ qua để đến nội dung

Suno API

RouteAPI cung cấp REST API thống nhất cho việc tạo nhạc AI Suno. Tạo nhạc từ văn bản, kéo dài bài hát, nhân bản giọng nói, tách stems và nhiều hơn nữa.

Tạo nhạc Suno là bất đồng bộ. Quy trình điển hình:

  1. Gửi tác vụ đến /suno/audios → nhận task_id
  2. Đợi 2-3 giây trước khi bắt đầu thăm dò
  3. Thăm dò mỗi 3-5 giây qua /suno/tasks với action: "retrieve"
  4. Khi status trở thành success → lấy audio_url
Trạng tháiÝ nghĩaBước tiếp theo
submittedĐã gửi, đang chờTiếp tục thăm dò
queuedĐang trong hàng đợiTiếp tục thăm dò
in_progressĐang tạoTiếp tục thăm dò
success✅ Hoàn thànhLấy audio_url từ phần tử đầu tiên của mảng data
failure❌ Thất bạiKiểm tra trường error
Terminal window
curl -X POST "https://api.routeapi.ai/suno/audios" \
-H "Authorization: Bearer $ROUTEAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "chirp-v5-5",
"prompt": "A cheerful summer pop song with piano and guitar",
"async": true
}'
Terminal window
curl -X POST "https://api.routeapi.ai/suno/tasks" \
-H "Authorization: Bearer $ROUTEAPI_KEY" \
-H "Content-Type: application/json" \
-d '{ "action": "retrieve", "id": "task_xxxxx" }'
{
"id": "task_xxxxx",
"task_id": "task_xxxxx",
"status": "success",
"data": [
{
"id": "audio_1",
"audio_url": "https://cdn.suno.ai/xxx.mp3",
"duration": 183.5
}
]
}
ID mô hìnhĐộ dài tối đaGiới hạn lyricGiới hạn style
chirp-v5-58 phút5000 ký tự1000 ký tự
chirp-v58 phút5000 ký tự1000 ký tự
chirp-v4150 giây3000 ký tự200 ký tự

Endpoint cốt lõi cho các thao tác âm thanh: trường action chọn thao tác và body chứa các trường mà thao tác đó cần.

TrườngLoạiMặc địnhMô tả
modelstringchirp-v4Mô hình tạo, khuyến nghị chirp-v5-5
actionstringgenerateLoại thao tác
asyncboolean—Khuyến nghị mạnh true. Chỉ khi truyền rõ false mới dùng nhánh đồng bộ; nếu bỏ trường này, trường không được chuyển tiếp và giá trị mặc định của upstream được áp dụng
ActionMô tảTrường bắt buộc
generateTạo nhạc mới từ promptprompt
extendKéo dài âm thanh hiện cóaudio_id + continue_at
coverDiễn giải lại bài hát hiện cóaudio_id
stemsTách thành giọng hát + nhạc nềnaudio_id
remasterRemaster âm thanh để cải thiện chất lượngaudio_id

Để biết đầy đủ các loại hành động, vui lòng tham khảo tài liệu tiếng Anh hoặc tiếng Trung.

Truy vấn trạng thái và kết quả tác vụ.

Terminal window
curl -X POST "https://api.routeapi.ai/suno/tasks" \
-H "Authorization: Bearer $ROUTEAPI_KEY" \
-H "Content-Type: application/json" \
-d '{ "action": "retrieve", "id": "task_xxxxx" }'
EndpointPhương thứcMô tả
/suno/lyricsPOSTTạo lời bài hát
/suno/uploadPOSTTải lên tệp âm thanh bên ngoài
/suno/personaGET/POSTQuản lý persona giọng nói
/suno/wavPOSTXuất định dạng WAV

Để biết tham chiếu API đầy đủ, vui lòng tham khảo tài liệu tiếng Anh hoặc tiếng Trung.

Lỗi phát sinh sau khi yêu cầu tới trình xử lý tác vụ dùng body của tác vụ:

{ "code": "invalid_request", "message": "prompt_empty (request id: ...)", "data": null }

Lỗi xác thực và định tuyến xảy ra trước trình xử lý đó và giữ body kiểu OpenAI {"error": {"message": "...", "type": "...", "code": "..."}}. Xem Lỗi thường gặp.

Mã trạng tháiMã lỗiNguyên nhân
400invalid_requestThiếu trường bắt buộc cho endpoint hoặc action; message nêu tên trường (ví dụ prompt_empty cho /suno/lyrics, hoặc audio_id_vocal_start_vocal_end_required cho /suno/vox)
400task_not_existaction: "retrieve" với id không thuộc tác vụ của bạn
401—API Key thiếu, không hợp lệ hoặc đã hết hạn (body kiểu OpenAI)
403insufficient_user_quotaSố dư tài khoản hoặc quota của Key không đủ cho khoản tạm giữ
429—Kênh upstream báo giới hạn tốc độ hoặc quá tải; RouteAPI thay thế thông điệp gốc của nhà cung cấp
502acedata_suno_request_failedUpstream đã nhận nhưng từ chối yêu cầu: kiểm duyệt nội dung, audio_id không tồn tại, action không hỗ trợ. message chứa giải thích của upstream
502upstream_task_id_missingUpstream trả về 2xx nhưng không có task ID nên không thể thăm dò; khoản tạm giữ được hoàn lại
503get_channel_failedKênh đứng sau tác vụ bị đánh giá là lỗi nghiêm trọng (ví dụ tài khoản upstream không dùng được); RouteAPI thay thế thông điệp gốc của nhà cung cấp. (Mô hình không có kênh nào bị từ chối trước khi vào trình xử lý tác vụ với 503 model_not_found và body kiểu OpenAI)
4xx / 5xxfail_to_fetch_taskUpstream trả về mã ngoài 2xx; mã trạng thái và body được chuyển tiếp, khoản tạm giữ được hoàn lại

Tác vụ thất bại (thăm dò trả về failure) cũng được hoàn khoản tạm giữ; lý do nằm ở trường error và message của bản ghi tác vụ.

Q: Nên sử dụng mô hình nào?
Sử dụng chirp-v5-5 (mới nhất và mạnh nhất).

Q: Tạo mất bao lâu?
generate thường mất 15-40 giây.

Q: Tôi có thể sử dụng audio_url trực tiếp không?
Có, liên kết CDN sẵn sàng để phát hoặc tải xuống.