API penjanaan mod tersuai

Dikemas kini 2026-09-18 · pasukan Suno-API

Penerangan endpoint

Mod tersuai sesuai apabila lirik, gaya dan tajuk sudah siap dan anda mahu mengawal suara yang menyanyi, kekuatan pengaruh gaya serta tahap kerawakan penjanaan.

Endpoint: POST /api/music/create/custom

Pengebilan: Berbayar, kini lalai 0.6 ¥ setiap panggilan. Setiap panggilan biasanya mengembalikan 2 lagu; jumlah yang benar-benar dicaj mengikut tetapan harga semasa dalam back-office.

Max Mode / Variety: endpoint ini menyokong parameter pilihan max_mode dan variety (0-4). Dengan max_mode dihidupkan, panggilan ini dibilkan pada 2× harga (0.6 → 1.2 ¥ setiap panggilan); variety tidak menambah kos. Maksud dan cara menghantarnya ada dalam bahagian "Parameter lanjutan" pada Gambaran keseluruhan API baharu.

Masa menunggu dan timeout (penting): ini endpoint segerak — pesanan hanya diterima dan dihantar ke penjanaan apabila respons tiba. Berdasarkan ukuran, kebanyakan permintaan membalas dalam 1-3 saat, kira-kira 10% melebihi 30 saat dan paling lama sekitar 230 saat. Tetapkan timeout klien kepada 300 saat atau lebih; tiada respons tidak bermakna tiada apa-apa dijana, dan jangan cuba semula sejurus selepas timeout (ia menggandakan pesanan dan mencaj dua kali). Jika sambungan terputus, periksa kemudian dengan GET /api/music/songs. Lihat "Masa menunggu dan tetapan timeout" dalam Gambaran keseluruhan API baharu.

Parameter permintaan

Headers

Parameter Jenis Wajib Nota
Authorization string ya Bearer YOUR_API_KEY
Content-Type string ya application/json

Parameter body

Parameter Jenis Wajib Lalai Nota
model string tidak suno-v6 Nama model untuk pelanggan: suno-v6, suno-v6-wild atau suno-v6-mini
lyrics string tidak - Lirik; boleh kosong untuk lagu instrumental
style_tags string ya - Tag gaya; beberapa boleh dipisahkan dengan koma
song_title string tidak - Tajuk lagu
instrumental boolean tidak false Sama ada hendak menjana lagu instrumental
negative_tags string tidak - Gaya atau kesan yang anda tidak mahu
vocal_gender string tidak - Jantina suara: m, f, male atau female
style_weight number tidak - Pengaruh gaya, dari 0.0 hingga 1.0
weirdness_constraint number tidak - Kerawakan, dari 0.0 hingga 1.0
wait_completion boolean tidak false Sama ada menunggu penjanaan selesai sebelum membalas

Nota parameter lanjutan

Jantina suara vocal_gender

Pengaruh gaya style_weight

Mengawal sejauh mana hasil mengikut style_tags. Semakin tinggi nilainya, semakin hasil cenderung mengikut tag gaya yang anda berikan.

Kerawakan weirdness_constraint

Mengawal sebanyak mana hasil berubah dan bersifat eksperimen. Nilai tinggi biasanya memberi lebih banyak variasi; nilai rendah memberi hasil yang lebih selamat.

Kedua-dua parameter nombor berada dalam julat 0.0 hingga 1.0, dan 0 ialah nilai eksplisit yang sah. Hanya meninggalkan medan sepenuhnya yang bermaksud "tidak dinyatakan".

Semasa mengisinya, ambil perhatian bahawa ini pecahan perpuluhan, bukan integer peratus. Rujukan yang disyorkan: 0.0–0.3 konservatif, 0.4–0.6 seimbang, 0.7–1.0 lebih eksperimen; jika tiada keutamaan jelas gunakan 0.5 atau biarkan kosong. Contoh: weirdness_constraint: 0.5, jangan tulis 50 atau 50%.

Dengan instrumental=true, hasilnya instrumental jadi lirik dan jantina suara tidak berkesan seperti lagu bernyanyi; jika perlu vokal, hantar false atau tinggalkan medan itu. Medan boolean mesti menggunakan true/false JSON, bukan rentetan.

Contoh permintaan Python

import requests

response = requests.post(
    'https://www.suno-api.io/api/music/create/custom',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    json={
        'model': 'suno-v6',
        'lyrics': '[Verse]\nMalam turun di atas laut\nangin senja melintasi tingkap',
        'style_tags': 'Mandopop, acoustic guitar, warm vocal',
        'song_title': 'Angin senja di tepi laut',
        'vocal_gender': 'male',
        'style_weight': 0.68,
        'weirdness_constraint': 0.32,
    },
    timeout=300,
)
response.raise_for_status()
songs = response.json()

Mod resit penerimaan (pilihan)

Endpoint ini juga menyokong mod resit penerimaan daripada API penjanaan mod mudah: dengan "accept_mode": "async" dalam body (atau pengepala X-Accept-Mode: async), endpoint terus mengembalikan 202 dan nombor resit, penjanaan berterusan di latar belakang, dan anda memantau kemajuan dengan GET /api/music/requests/{request_id}.

Sesuai untuk klien yang tidak boleh memegang sambungan lama, atau yang tidak mahu timeout ditafsirkan sebagai "tiada apa-apa dijana". Tanpa parameter itu, kelakuannya sama seperti sebelum ini.

curl -X POST https://www.suno-api.io/api/music/create/custom \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  --max-time 300 \
  -d '{
    "style_tags": "Mandopop, acoustic guitar, warm vocal",
    "song_title": "Angin senja di tepi laut",
    "vocal_gender": "male",
    "accept_mode": "async"
  }'

Bentuk respons dan cara tinjauan berkala ada dalam bahagian "Mod resit penerimaan" pada API penjanaan mod mudah.

Pengesahan parameter

Kes berikut mengembalikan HTTP 400, dan message ralat menyebut medan yang tidak sah:

Had medan teks

Medan berikut juga mengembalikan HTTP 400 apabila terlalu panjang, tidak masuk penjanaan dan tidak dicaj di hadapan. Pengiraan dalam aksara Unicode (satu aksara Han dikira 1) dan ruang di hujung hadapan turut dikira:

Medan Had
prompt (lirik, serasi dengan lyrics) 3000 aksara
style_tags (gaya, serasi dengan tags, style) 1000 aksara
negative_tags (gaya dikecualikan) 1000 aksara
song_title (tajuk, serasi dengan title) 100 aksara

Mesej ralat berbentuk style_tags must not exceed 1000 characters; received 2772: perkataan pertama ialah nama medan yang melebihi dan di hujung ialah bilangan yang diukur, jadi apabila menerima 400 anda boleh memendekkan berdasarkan dua nombor itu tanpa mencuba medan satu demi satu. Peraturan umum ada dalam "Had medan teks" pada Gambaran keseluruhan API baharu.

Respons

Endpoint biasanya mengembalikan tatasusunan dengan 2 lagu. Permintaan tak segerak biasanya bermula pada status pending; simpan song_id dan dapatkan status akhir serta alamat audio melalui API pertanyaan lagu. Medan lagunya sama seperti dalam API penjanaan mod mudah.

Medan serasi

Medan disyorkan Medan serasi
vocal_gender vocalGender
style_weight styleWeight
weirdness_constraint weirdnessConstraint

Integrasi baharu sebaiknya menggunakan snake_case secara konsisten. Jika satu permintaan membawa snake_case dan camelCase sekali gus, nilai snake_case yang diutamakan.

SeterusnyaAPI penjanaan pertuturan

Dapatkan kunci API

Cipta kunci API dalam konsol selepas mendaftar. Setiap penjanaan berharga 0.6 ¥ dan mengembalikan 2 lagu, muat turun tanpa had dan nombor telefon tidak diperlukan.

Dapatkan kunci API Kembali ke gambaran