API sijil lesen komersial muzik
Penerangan endpoint
Endpoint sijil lesen komersial muzik digunakan untuk menyenaraikan lagu yang boleh dilesenkan oleh pengguna API Key semasa, menjana sijil PDF, menyemak sejarah sijil dan memuat turun fail yang telah dikeluarkan.
Semua endpoint menggunakan New API Key secara seragam:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Alamat asas:
https://www.suno-api.io
Prasyarat
- API Key mesti sah dan dimiliki oleh pengguna yang memerlukan sijil.
- Pengguna perlu melengkapkan pautan identiti lesen terlebih dahulu (lihat "0. Kelayakan dan identiti lesen"); setelah disahkan, identiti akan dikunci mengikut peraturan produk.
- Pengguna perlu memenuhi syarat tambah nilai terkumpul untuk individu atau syarikat.
- Endpoint biasa hanya memulangkan maklumat identiti bertopeng; ia tidak pernah memulangkan nombor kad pengenalan, nombor telefon atau kod kredit sosial bersepadu dalam bentuk teks biasa.
- Setiap lagu hanya boleh mengeluarkan satu sijil yang berjaya; sijil yang gagal dijana tidak menghabiskan kelayakan lagu tersebut.
- Buat masa ini disokong jenis penjanaan ditetapkan yang sudah selesai, mempunyai audio dan mempunyai Suno Song ID sebenar. Boleh dipilih atau tidak ditentukan oleh
authorization.selectabledalam senarai lagu.
0. Kelayakan dan identiti lesen
Sebelum mengeluarkan sijil, kelayakan perlu disemak dan identiti perlu dipautkan. Kedua-dua endpoint ini percuma.
0.1 Menyemak kelayakan dan identiti
Endpoint: GET /api/music/authorization/context
{
"code": 200,
"message": "success",
"data": {
"identity": {
"exists": false
},
"eligibility": {
"current_amount": 216.3,
"personal_required_amount": 200,
"company_required_amount": 500,
"personal_eligible": true,
"company_eligible": false
},
"stats": {
"authorized_song_count": 0,
"certificate_count": 0
}
}
}
| Medan | Jenis | Nota |
|---|---|---|
| identity.exists | boolean | Sama ada identiti lesen sudah dipautkan; apabila true, maklumat identiti bertopeng turut dipulangkan |
| eligibility.current_amount | number | Jumlah tambah nilai terkumpul semasa (yuan) |
| eligibility.personal_required_amount | number | Ambang tambah nilai terkumpul untuk lesen individu |
| eligibility.company_required_amount | number | Ambang tambah nilai terkumpul untuk lesen syarikat |
| eligibility.personal_eligible / company_eligible | boolean | Sama ada kelayakan berkenaan dipenuhi pada masa ini |
| stats.authorized_song_count / certificate_count | number | Bilangan lagu yang dilesenkan dan sijil yang dikeluarkan |
0.2 Memautkan identiti lesen
Endpoint: POST /api/music/authorization/identity
{
"identity_type": "personal",
"legal_name": "Ahmad bin Ali",
"id_number": "110101199001010000",
"contact_name": "Ahmad bin Ali",
"phone": "13800000000",
"email": "user@example.com",
"address": "Jalan Merdeka 12, Kuala Lumpur",
"confirm_locked": true
}
| Parameter | Jenis | Wajib | Nota |
|---|---|---|---|
| identity_type | string | ya | personal atau company |
| legal_name | string | ya | Nama individu |
| id_number | string | ya | Nombor kad pengenalan (disimpan secara disulitkan di pelayan; endpoint biasa hanya memulangkan hasil bertopeng) |
| company_name | string | wajib untuk syarikat | Nama syarikat |
| credit_code | string | wajib untuk syarikat | Kod kredit sosial bersepadu |
| contact_name | string | ya | Orang hubungi |
| phone | string | ya | Telefon hubungi |
| string | ya | E-mel hubungi | |
| address | string | tidak | Alamat hubungi |
| confirm_locked | boolean | ya | Mengesahkan maklumat identiti dikunci; menghantar true bermaksud menerima bahawa ia tidak boleh diubah sendiri selepas dipautkan |
Respons memulangkan maklumat identiti bertopeng: {"identity": {...}}. Selepas pautan berjaya, sahkan melalui endpoint context bahawa identity.exists sudah menjadi true, kemudian panggil senarai lagu dan endpoint pengeluaran. Jika maklumat identiti perlu diubah, hubungi khidmat pelanggan.
1. Menyenaraikan lagu yang boleh dilesenkan
Endpoint: GET /api/music/authorization/songs
Parameter pertanyaan
| Parameter | Jenis | Wajib | Lalai | Nota |
|---|---|---|---|---|
p |
number | tidak | 1 |
Nombor halaman |
page_size |
number | tidak | lalai sistem | Item setiap halaman, maksimum 100 |
q |
string | tidak | - | Cari mengikut tajuk, prompt atau Suno Song ID yang tepat |
status |
string | tidak | all |
all, selectable, authorized atau unavailable |
Contoh permintaan
curl "https://www.suno-api.io/api/music/authorization/songs?p=1&page_size=20&status=selectable" \
-H "Authorization: Bearer YOUR_API_KEY"
Contoh respons
{
"success": true,
"message": "",
"data": {
"page": 1,
"page_size": 20,
"total": 1,
"items": [
{
"task_id": 10001,
"suno_song_id": "suno-song-id-1",
"title": "Lagu contoh",
"generation_type": "generate",
"completed_at": 1784000000,
"created_at": 1783999000,
"audio_url": "https://example.com/audio.mp3",
"model_name": "suno-v6",
"authorization": {
"selectable": true
}
}
]
}
}
Apabila authorization.selectable=false, respons menerangkan sebabnya melalui reason_code dan reason. Lagu yang sudah mempunyai sijil turut memulangkan certificate_id dan certificate_no.
2. Menjana sijil
Endpoint: POST /api/music/authorization/certificates
Parameter badan
| Parameter | Jenis | Wajib | Nota |
|---|---|---|---|
song_ids |
string[] | ya | Senarai Suno Song ID sebenar yang akan dilesenkan |
confirm_risk_terms |
boolean | ya | Mesti true, mengesahkan skop lesen dan terma risiko |
Contoh permintaan
curl -X POST https://www.suno-api.io/api/music/authorization/certificates \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"song_ids": ["suno-song-id-1", "suno-song-id-2"],
"confirm_risk_terms": true
}'
Contoh respons
{
"success": true,
"message": "",
"data": {
"certificate": {
"id": 101,
"certificate_no": "CERTIFICATE-NO",
"verification_code": "VERIFY-CODE",
"status": "issued",
"song_count": 2,
"identity_type_snapshot": "personal",
"licensee_name_masked": "A*",
"document_no_masked_snapshot": "11**************34",
"phone_masked_snapshot": "138****0000",
"pdf_sha256": "PDF_SHA256",
"issued_at": 1784000100,
"created_at": 1784000000,
"updated_at": 1784000100,
"download_url": "/api/music/authorization/certificates/101/download",
"songs": []
}
}
}
Pada respons yang berjaya, status ialah issued. Jika penghasilan PDF gagal, sijil akan ditandakan failed dan lagu berkenaan masih boleh dihantar semula selepas masalah diselesaikan.
3. Menyemak sejarah sijil
Endpoint: GET /api/music/authorization/certificates
Parameter pertanyaan
| Parameter | Jenis | Wajib | Lalai | Nota |
|---|---|---|---|---|
p |
number | tidak | 1 |
Nombor halaman |
page_size |
number | tidak | lalai sistem | Item setiap halaman, maksimum 100 |
q |
string | tidak | - | Cari mengikut nombor sijil atau nama pemegang lesen yang bertopeng |
Contoh permintaan
curl "https://www.suno-api.io/api/music/authorization/certificates?p=1&page_size=20" \
-H "Authorization: Bearer YOUR_API_KEY"
Struktur respons
data respons ialah objek berhalaman yang mengandungi page, page_size, total dan items. Setiap item dalam items ialah ringkasan sijil dan menyertakan petikan lagu sijil tersebut.
4. Menyemak butiran sijil
Endpoint: GET /api/music/authorization/certificates/:id
Parameter laluan id ialah ID angka sijil. Endpoint ini hanya membenarkan akses kepada sijil milik pengguna API Key semasa.
Contoh permintaan
curl https://www.suno-api.io/api/music/authorization/certificates/101 \
-H "Authorization: Bearer YOUR_API_KEY"
Struktur respons
Apabila berjaya ia memulangkan data.certificate, dengan medan yang merangkumi nombor sijil, status, maklumat pemegang lesen yang bertopeng, masa pengeluaran, nilai pengesahan PDF, alamat muat turun dan petikan lagu yang dilesenkan.
5. Memuat turun PDF sijil
Endpoint: GET /api/music/authorization/certificates/:id/download
Hanya sijil dengan status issued boleh dimuat turun. Permintaan muat turun masih memerlukan API Key yang sah, dan anda hanya boleh memuat turun sijil sendiri.
Contoh permintaan
curl https://www.suno-api.io/api/music/authorization/certificates/101/download \
-H "Authorization: Bearer YOUR_API_KEY" \
--output authorization-certificate.pdf
Respons yang berjaya ialah strim fail application/pdf; nama fail mengikut Content-Disposition backend.
Punca kegagalan lazim
| Situasi | Cadangan pengendalian |
|---|---|
| API Key tidak sah atau tidak disertakan | Periksa pengepala Authorization: Bearer YOUR_API_KEY |
| Identiti lesen belum dipautkan | Selesaikan pautan identiti di halaman sijil Create UI terlebih dahulu |
| Tambah nilai terkumpul tidak mencukupi | Cuba semula selepas syarat individu atau syarikat dipenuhi |
| Terma risiko belum disahkan | Tetapkan confirm_risk_terms kepada true |
| Lagu tidak boleh dilesenkan | Lihat reason_code dan reason yang dipulangkan senarai lagu |
| Lagu sudah mempunyai sijil | Guna certificate_id yang dipulangkan untuk menyemak sijil sedia ada |
| PDF tidak dapat dijana buat masa ini | Cuba semula kemudian; rekod yang gagal tidak menghabiskan kelayakan lesen lagu |
Nota
- Guna
suno_song_idyang dipulangkan senarai lagu; jangan guna ID pemegang tempatpending:*atau ID daripada jadual tugasan. - Alamat muat turun bukan pautan awam; jangan buang pengesahan API Key.
- Rekod sijil milik pengguna yang sepadan dengan API Key dan tidak boleh disemak atau dimuat turun merentas pengguna.
- Skop lesen, terma had dan kandungan PDF akhir tertakluk kepada sijil yang benar-benar dikeluarkan.
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