API หนังสือรับรองสิทธิ์ใช้งานเพลงเชิงพาณิชย์

อัปเดต 2026-09-18 · ทีม Suno-API

คำอธิบายเอนด์พอยต์

เอนด์พอยต์หนังสือรับรองสิทธิ์ใช้งานเพลงเชิงพาณิชย์ใช้สำหรับดูรายการเพลงที่ผู้ใช้ของ API Key ปัจจุบันมีสิทธิ์ออกหนังสือรับรอง สร้างหนังสือรับรองเป็น PDF ดูประวัติหนังสือรับรอง และดาวน์โหลดไฟล์ที่ออกให้แล้ว

ทุกเอนด์พอยต์ใช้ New API Key เหมือนกันทั้งหมด:

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

ที่อยู่พื้นฐาน:

https://www.suno-api.io

ข้อกำหนดเบื้องต้น

0. คุณสมบัติและตัวตนสำหรับการรับรอง

ก่อนออกหนังสือรับรอง ต้องตรวจสอบคุณสมบัติและผูกตัวตนก่อน เอนด์พอยต์ทั้งสองนี้ฟรี

0.1 ตรวจสอบคุณสมบัติและสถานะตัวตน

เอนด์พอยต์: 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
    }
  }
}
ฟิลด์ ชนิด หมายเหตุ
identity.exists boolean ผูกตัวตนสำหรับการรับรองแล้วหรือยัง เมื่อเป็น true จะคืนข้อมูลตัวตนที่ปิดบังไว้ด้วย
eligibility.current_amount number ยอดเติมสะสมปัจจุบัน (หยวน)
eligibility.personal_required_amount number เกณฑ์ยอดเติมสะสมที่ต้องใช้สำหรับการรับรองบุคคลธรรมดา
eligibility.company_required_amount number เกณฑ์ยอดเติมสะสมที่ต้องใช้สำหรับการรับรองนิติบุคคล
eligibility.personal_eligible / company_eligible boolean ปัจจุบันผ่านคุณสมบัติที่ตรงกันหรือไม่
stats.authorized_song_count / certificate_count number จำนวนเพลงที่รับรองแล้วและจำนวนหนังสือรับรองที่ออกแล้ว

0.2 ผูกตัวตนสำหรับการรับรอง

เอนด์พอยต์: POST /api/music/authorization/identity

{
  "identity_type": "personal",
  "legal_name": "สมชาย ใจดี",
  "id_number": "110101199001010000",
  "contact_name": "สมชาย ใจดี",
  "phone": "13800000000",
  "email": "user@example.com",
  "address": "12 ถนนสุขุมวิท กรุงเทพฯ",
  "confirm_locked": true
}
พารามิเตอร์ ชนิด จำเป็น หมายเหตุ
identity_type string ใช่ personal (บุคคลธรรมดา) หรือ company (นิติบุคคล)
legal_name string ใช่ ชื่อบุคคล
id_number string ใช่ เลขบัตรประชาชน (เซิร์ฟเวอร์เก็บแบบเข้ารหัส เอนด์พอยต์ทั่วไปคืนเฉพาะผลที่ปิดบังไว้)
company_name string นิติบุคคลต้องระบุ ชื่อนิติบุคคล
credit_code string นิติบุคคลต้องระบุ รหัสเครดิตสังคมแบบรวม
contact_name string ใช่ ผู้ติดต่อ
phone string ใช่ เบอร์ติดต่อ
email string ใช่ อีเมลติดต่อ
address string ไม่ ที่อยู่ติดต่อ
confirm_locked boolean ใช่ ยืนยันการล็อกข้อมูลตัวตน การส่ง true หมายถึงยอมรับว่าหลังผูกแล้วจะแก้ไขเองไม่ได้

คำตอบจะคืนข้อมูลตัวตนที่ปิดบังไว้: {"identity": {...}} หลังผูกสำเร็จ กรุณาใช้เอนด์พอยต์ context ยืนยันว่า identity.exists กลายเป็น true แล้วจึงเรียกรายการเพลงและเอนด์พอยต์ออกหนังสือรับรอง หากต้องแก้ไขข้อมูลตัวตน กรุณาติดต่อฝ่ายบริการลูกค้า

1. ดูรายการเพลงที่รับรองได้

เอนด์พอยต์: GET /api/music/authorization/songs

พารามิเตอร์คำค้น

พารามิเตอร์ ชนิด จำเป็น ค่าเริ่มต้น หมายเหตุ
p number ไม่ 1 หมายเลขหน้า
page_size number ไม่ ค่าเริ่มต้นของระบบ จำนวนต่อหน้า สูงสุด 100
q string ไม่ - ค้นหาด้วยชื่อพรอมป์ต์ หรือ Suno Song ID ที่ตรงทั้งหมด
status string ไม่ all all, selectable, authorized หรือ unavailable

ตัวอย่างคำขอ

curl "https://www.suno-api.io/api/music/authorization/songs?p=1&page_size=20&status=selectable" \
  -H "Authorization: Bearer YOUR_API_KEY"

ตัวอย่างคำตอบ

{
  "success": true,
  "message": "",
  "data": {
    "page": 1,
    "page_size": 20,
    "total": 1,
    "items": [
      {
        "task_id": 10001,
        "suno_song_id": "suno-song-id-1",
        "title": "เพลงตัวอย่าง",
        "generation_type": "generate",
        "completed_at": 1784000000,
        "created_at": 1783999000,
        "audio_url": "https://example.com/audio.mp3",
        "model_name": "suno-v6",
        "authorization": {
          "selectable": true
        }
      }
    ]
  }
}

เมื่อ authorization.selectable=false คำตอบจะอธิบายเหตุผลผ่าน reason_code และ reason เพลงที่ออกหนังสือรับรองแล้วจะคืน certificate_id และ certificate_no เพิ่มด้วย

2. สร้างหนังสือรับรอง

เอนด์พอยต์: POST /api/music/authorization/certificates

พารามิเตอร์บอดี

พารามิเตอร์ ชนิด จำเป็น หมายเหตุ
song_ids string[] ใช่ รายการ Suno Song ID จริงที่ต้องการรับรอง
confirm_risk_terms boolean ใช่ ต้องเป็น true เพื่อยืนยันขอบเขตการรับรองและข้อกำหนดความเสี่ยง

ตัวอย่างคำขอ

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
  }'

ตัวอย่างคำตอบ

{
  "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": "ส*",
      "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": []
    }
  }
}

ในคำตอบที่สำเร็จ status จะเป็น issued หากสร้าง PDF ไม่สำเร็จ หนังสือรับรองจะถูกทำเครื่องหมายเป็น failed และเพลงที่เกี่ยวข้องยังส่งใหม่ได้หลังแก้ปัญหาแล้ว

3. ดูประวัติหนังสือรับรอง

เอนด์พอยต์: GET /api/music/authorization/certificates

พารามิเตอร์คำค้น

พารามิเตอร์ ชนิด จำเป็น ค่าเริ่มต้น หมายเหตุ
p number ไม่ 1 หมายเลขหน้า
page_size number ไม่ ค่าเริ่มต้นของระบบ จำนวนต่อหน้า สูงสุด 100
q string ไม่ - ค้นหาด้วยเลขที่หนังสือรับรองหรือชื่อผู้รับรองที่ปิดบังไว้

ตัวอย่างคำขอ

curl "https://www.suno-api.io/api/music/authorization/certificates?p=1&page_size=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

โครงสร้างคำตอบ

data ของคำตอบเป็นออบเจ็กต์แบ่งหน้า ประกอบด้วย page, page_size, total และ items แต่ละรายการใน items เป็นสรุปหนังสือรับรอง และมีสแนปช็อตเพลงของหนังสือรับรองนั้น

4. ดูรายละเอียดหนังสือรับรอง

เอนด์พอยต์: GET /api/music/authorization/certificates/:id

พารามิเตอร์ในเส้นทาง id คือ ID ตัวเลขของหนังสือรับรอง เอนด์พอยต์นี้อนุญาตให้เข้าถึงเฉพาะหนังสือรับรองของผู้ใช้ที่เป็นเจ้าของ API Key ปัจจุบันเท่านั้น

ตัวอย่างคำขอ

curl https://www.suno-api.io/api/music/authorization/certificates/101 \
  -H "Authorization: Bearer YOUR_API_KEY"

โครงสร้างคำตอบ

เมื่อสำเร็จจะคืน data.certificate โดยฟิลด์ประกอบด้วยเลขที่หนังสือรับรอง สถานะ ข้อมูลผู้รับรองที่ปิดบังไว้ เวลาที่ออก ค่าตรวจสอบของ PDF ที่อยู่ดาวน์โหลด และสแนปช็อตเพลงที่รับรอง

5. ดาวน์โหลด PDF หนังสือรับรอง

เอนด์พอยต์: GET /api/music/authorization/certificates/:id/download

ดาวน์โหลดได้เฉพาะหนังสือรับรองที่มีสถานะ issued เท่านั้น คำขอดาวน์โหลดยังต้องมี API Key ที่ใช้ได้ และดาวน์โหลดได้เฉพาะหนังสือรับรองของตัวเอง

ตัวอย่างคำขอ

curl https://www.suno-api.io/api/music/authorization/certificates/101/download \
  -H "Authorization: Bearer YOUR_API_KEY" \
  --output authorization-certificate.pdf

คำตอบที่สำเร็จเป็นสตรีมไฟล์ application/pdf โดยชื่อไฟล์เป็นไปตาม Content-Disposition ของแบ็กเอนด์

สาเหตุความล้มเหลวที่พบบ่อย

สถานการณ์ คำแนะนำในการจัดการ
API Key ไม่ถูกต้องหรือไม่ได้ส่งมา ตรวจสอบเฮดเดอร์ Authorization: Bearer YOUR_API_KEY
ยังไม่ได้ผูกตัวตนสำหรับการรับรอง ผูกตัวตนในหน้าหนังสือรับรองของ Create UI ให้เสร็จก่อน
ยอดเติมสะสมไม่ถึงเกณฑ์ ลองใหม่หลังถึงเกณฑ์ของบุคคลธรรมดาหรือนิติบุคคล
ยังไม่ได้ยืนยันข้อกำหนดความเสี่ยง ตั้ง confirm_risk_terms เป็น true
เพลงรับรองไม่ได้ ดู reason_code และ reason ที่รายการเพลงคืนมา
เพลงออกหนังสือรับรองแล้ว ใช้ certificate_id ที่คืนมาเพื่อดูหนังสือรับรองเดิม
ตอนนี้สร้าง PDF ไม่ได้ ลองใหม่ภายหลัง บันทึกที่ล้มเหลวไม่กินสิทธิ์การรับรองของเพลง

ข้อควรระวัง

รับคีย์ API

สร้างคีย์ API ในคอนโซลหลังสมัครสมาชิก การสร้างหนึ่งครั้งราคา 0.6 หยวน ได้ 2 เพลง ดาวน์โหลดไม่จำกัด และไม่ต้องใช้เบอร์โทรศัพท์

รับคีย์ API กลับไปภาพรวม