API گواهی مجوز تجاری موسیقی

به‌روزرسانی 2026-09-18 · تیم Suno-API

توضیح نقطه پایانی

نقطه‌های پایانی گواهی مجوز تجاری موسیقی برای فهرست‌کردن آهنگ‌هایی است که کاربر کلید API جاری می‌تواند مجوزشان را بدهد، ساخت گواهی 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": "خیابان ولیعصر، تهران",
  "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 خیر مقدار پیش‌فرض سامانه تعداد در هر صفحه، حداکثر ۱۰۰
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 خیر مقدار پیش‌فرض سامانه تعداد در هر صفحه، حداکثر ۱۰۰
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 شناسه عددی گواهی است. این نقطه پایانی تنها به گواهی‌های کاربرِ کلید API جاری دسترسی می‌دهد.

نمونه درخواست

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 معتبر نیاز دارد و فقط می‌توانید گواهی‌های خودتان را دانلود کنید.

نمونه درخواست

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 نامعتبر است یا فرستاده نشده سرآیند Authorization: Bearer YOUR_API_KEY را بررسی کنید
هویت مجوز هنوز متصل نشده ابتدا اتصال هویت را در صفحه گواهی در Create UI کامل کنید
شارژ تجمعی کافی نیست پس از رسیدن به شرط شخصی یا شرکتی دوباره تلاش کنید
شرایط ریسک تأیید نشده confirm_risk_terms را روی true بگذارید
آهنگ قابل مجوز نیست reason_code و reason برگشتی از فهرست آهنگ‌ها را ببینید
آهنگ از قبل گواهی دارد با certificate_id برگشتی گواهی موجود را بپرسید
PDF فعلاً ساخته نمی‌شود بعداً دوباره تلاش کنید؛ رکورد ناموفق صلاحیت مجوز آهنگ را مصرف نمی‌کند

نکات

دریافت کلید API

پس از ثبت‌نام از کنسول یک کلید API بسازید. هر تولید ۰٫۶ یوان هزینه دارد و ۲ قطعه برمی‌گرداند، دانلودها نامحدود است و به شماره تلفن نیازی نیست.

دریافت کلید API بازگشت به مرور کلی