เริ่มต้นอย่างรวดเร็ว

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

คู่มือนี้พาคุณจากขั้นตอนสร้างคีย์ API ไปจนถึงเพลงแรก ตรวจสอบความคืบหน้า และดาวน์โหลดไฟล์เสียง ได้ภายในเวลาประมาณห้านาที ตัวอย่างทั้งหมดคัดลอกไปรันได้ทันที

โมเดลเริ่มต้นปัจจุบันคือ suno-v6 โมเดลสร้างเพลงตั้งแต่ suno-v2 ถึง suno-v5-5 ถูกปิดแล้ว อาจยังปรากฏในงานเก่า แต่จะไม่รับคำขอใหม่

ขั้นที่ 1: ขอคีย์ API

  1. เปิด https://www.suno-api.io
  2. กด ขอคีย์ API แล้วสมัคร ใช้เพียงอีเมล ไม่ต้องใช้เบอร์โทรศัพท์
  3. ในคอนโซล เปิดส่วนจัดการโทเคนและสร้างคีย์
  4. คัดลอกทันที เพราะคีย์จะแสดงเพียงครั้งเดียว เติมยอดคงเหลือด้วยรหัสแลกเครดิตก่อนเรียกครั้งแรก ที่มีค่าใช้จ่าย

ขั้นที่ 2: ตั้งค่าคำขอ

ทุกการเรียกใช้ฐาน URL และเฮดเดอร์เดียวกัน:

POST https://www.suno-api.io
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

ขั้นที่ 3: ส่งคำขอแรก

ตัวอย่างที่ 1 — สร้างจากคำอธิบาย

อธิบายเพลง แล้ว API จะเขียนเนื้อร้อง ทำนอง และเรียบเรียงให้:

curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "เพลงโฟล์กสนุก ๆ เกี่ยวกับวันแรกของฤดูใบไม้ผลิ",
    "model": "suno-v6"
  }'

ผลลัพธ์:

[
  {
    "song_id": "abc123",
    "status": "pending",
    "song_title": "เรื่องราวฤดูใบไม้ผลิ",
    "description": "เพลงโฟล์กสนุก ๆ เกี่ยวกับวันแรกของฤดูใบไม้ผลิ",
    "created_at": "2026-04-22T10:30:00Z"
  },
  {
    "song_id": "def456",
    "status": "pending",
    "song_title": "ก้าวย่างฤดูใบไม้ผลิ",
    "description": "เพลงโฟล์กสนุก ๆ เกี่ยวกับวันแรกของฤดูใบไม้ผลิ",
    "created_at": "2026-04-22T10:30:00Z"
  }
]

แต่ละครั้งจะได้สองเวอร์ชันให้เลือก หนึ่งครั้งราคา 0,6 ¥

ตัวอย่างที่ 2 — ตรวจสอบความคืบหน้า

ส่งค่า song_id ที่ได้ไปยังปลายทางตรวจสอบสถานะ:

curl -X POST https://www.suno-api.io/api/music/query \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "song_ids": ["abc123", "def456"],
    "model": "suno-v6"
  }'

ระหว่างที่งานยังทำงานอยู่:

[
  {
    "song_id": "abc123",
    "status": "processing",
    "song_title": "เรื่องราวฤดูใบไม้ผลิ",
    "progress": "60%"
  }
]

เมื่อเสร็จแล้ว:

[
  {
    "song_id": "abc123",
    "status": "completed",
    "song_title": "เรื่องราวฤดูใบไม้ผลิ",
    "audio_url": "https://media.code-go.com/assets/abc123-mp3.mp3",
    "video_url": "https://media.code-go.com/assets/abc123-mp4.mp4",
    "cover_url": "https://media.code-go.com/assets/abc123-cover.jpg",
    "duration": 168
  }
]

ค่า status จะไล่จาก pending ไป submitted แล้ว processing และจบที่ completed ระหว่างทำงาน ที่อยู่ต่าง ๆ อาจว่างได้ ให้ดูที่ status ไม่ใช่ดูว่ามี audio_url หรือไม่

ขั้นที่ 4: ดาวน์โหลดไฟล์

เมื่อ status เป็น completed ให้นำ audio_url ไปใช้ได้เลย การดาวน์โหลด MP3 และ WAV ไม่จำกัดจำนวนและไม่มีค่าใช้จ่ายเพิ่ม หากต้องการไฟล์เสียงแบบไม่สูญเสียข้อมูลสำหรับตัดต่อ ให้ใช้ปลายทาง WAV

สถานการณ์ที่พบบ่อย

เพลงประกอบวิดีโอ

{
  "description": "เพลงประกอบ lo-fi ผ่อนคลายสำหรับวิดีโอสินค้า ไม่มีเสียงร้อง ไดนามิกสม่ำเสมอ",
  "instrumental": true,
  "model": "suno-v6"
}

เมื่อ instrumental เป็น true ผลลัพธ์จะไม่มีเสียงร้อง

เนื้อร้องและสไตล์ของตัวเอง

{
  "lyrics": "[Verse 1]\nแสงไฟในเมืองค่อย ๆ ดับลง\n\n[Chorus]\nเราเดินต่อไป",
  "style": "acoustic pop, เสียงร้องหญิงอบอุ่น, 92 BPM",
  "model": "suno-v6"
}

ตรวจสอบจนกว่างานจะเสร็จ

import time
import requests

API_KEY = "sk-your-key-here"
BASE = "https://www.suno-api.io"
HEADERS = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}

created = requests.post(
    f"{BASE}/api/music/create",
    headers=HEADERS,
    json={"description": "เพลงโฟล์กสนุก ๆ เกี่ยวกับฤดูใบไม้ผลิ", "model": "suno-v6"},
).json()

song_ids = [track["song_id"] for track in created]

for _ in range(60):
    time.sleep(10)
    tracks = requests.post(
        f"{BASE}/api/music/query",
        headers=HEADERS,
        json={"song_ids": song_ids, "model": "suno-v6"},
    ).json()
    if all(track.get("status") == "completed" for track in tracks):
        for track in tracks:
            print(track["song_title"], track["audio_url"])
        break

การจัดการข้อผิดพลาด

รหัสสถานะหลัก

รหัส ความหมาย สิ่งที่ควรทำ
200 สำเร็จ อ่านเนื้อหาผลลัพธ์
400 คำขอไม่ถูกต้อง — พารามิเตอร์หายไปหรือผิดรูปแบบ เทียบกับเอกสาร
401 ไม่มีคีย์หรือคีย์ไม่ถูกต้อง ตรวจเฮดเดอร์ Authorization
403 ไม่มีสิทธิ์ มักเกิดจากยอดคงเหลือไม่พอ เติมเงินในบัญชี
429 เกินขีดจำกัดคำขอ ส่งซ้ำแบบ backoff แบบทวีคูณ
500 เซิร์ฟเวอร์ผิดพลาด ส่งซ้ำ หากยังไม่หายให้ติดต่อฝ่ายสนับสนุน

รูปแบบข้อผิดพลาด

{
  "error": {
    "message": "Invalid API key provided",
    "type": "invalid_request_error",
    "code": "invalid_api_key"
  }
}

แนวปฏิบัติที่ดี

ขั้นตอนถัดไป

รับคีย์ API

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

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