API certyfikatu komercyjnej licencji muzycznej

Zaktualizowano 2026-09-18 · zespół Suno-API

Opis punktu końcowego

Punkty końcowe certyfikatu komercyjnej licencji muzycznej pozwalają wylistować utwory, które użytkownik bieżącego klucza API może licencjonować, wygenerować certyfikat PDF, sprawdzić historię certyfikatów i pobrać wydane pliki.

Wszystkie punkty końcowe używają jednolicie New API Key:

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Adres bazowy:

https://www.suno-api.io

Warunki wstępne

0. Uprawnienie i tożsamość licencyjna

Przed wydaniem certyfikatu trzeba sprawdzić uprawnienie i powiązać tożsamość. Oba punkty końcowe są bezpłatne.

0.1 Sprawdzenie uprawnienia i tożsamości

Punkt końcowy: 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
    }
  }
}
Pole Typ Uwagi
identity.exists boolean Czy tożsamość licencyjna jest już powiązana; przy true zwracane są zamaskowane informacje o tożsamości
eligibility.current_amount number Bieżąca skumulowana kwota doładowań (juany)
eligibility.personal_required_amount number Próg skumulowanych doładowań wymagany dla licencji indywidualnej
eligibility.company_required_amount number Próg skumulowanych doładowań wymagany dla licencji firmowej
eligibility.personal_eligible / company_eligible boolean Czy dane uprawnienie jest obecnie spełnione
stats.authorized_song_count / certificate_count number Liczba licencjonowanych utworów i wydanych certyfikatów

0.2 Powiązanie tożsamości licencyjnej

Punkt końcowy: POST /api/music/authorization/identity

{
  "identity_type": "personal",
  "legal_name": "Jan Kowalski",
  "id_number": "110101199001010000",
  "contact_name": "Jan Kowalski",
  "phone": "13800000000",
  "email": "user@example.com",
  "address": "ul. Marszałkowska 12, Warszawa",
  "confirm_locked": true
}
Parametr Typ Wymagany Uwagi
identity_type string tak personal lub company
legal_name string tak Imię i nazwisko osoby
id_number string tak Numer dokumentu (przechowywany zaszyfrowany na serwerze; zwykłe punkty końcowe zwracają tylko wynik zamaskowany)
company_name string wymagane dla firm Nazwa firmy
credit_code string wymagane dla firm Jednolity kod kredytu społecznego
contact_name string tak Osoba kontaktowa
phone string tak Telefon kontaktowy
email string tak E-mail kontaktowy
address string nie Adres kontaktowy
confirm_locked boolean tak Potwierdza zablokowanie danych tożsamości; przekazanie true oznacza zgodę na to, że po powiązaniu nie można ich samodzielnie zmienić

Odpowiedź zwraca zamaskowane informacje o tożsamości: {"identity": {...}}. Po udanym powiązaniu sprawdź punktem końcowym context, że identity.exists ma wartość true, a następnie wywołaj listę utworów i punkty końcowe wydawania. Jeśli dane tożsamości wymagają zmiany, skontaktuj się z obsługą klienta.

1. Lista utworów możliwych do licencjonowania

Punkt końcowy: GET /api/music/authorization/songs

Parametry zapytania

Parametr Typ Wymagany Domyślnie Uwagi
p number nie 1 Numer strony
page_size number nie wartość domyślna systemu Elementów na stronę, maksymalnie 100
q string nie - Szukaj po tytule, prompcie lub dokładnym Suno Song ID
status string nie all all, selectable, authorized lub unavailable

Przykładowe żądanie

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

Przykładowa odpowiedź

{
  "success": true,
  "message": "",
  "data": {
    "page": 1,
    "page_size": 20,
    "total": 1,
    "items": [
      {
        "task_id": 10001,
        "suno_song_id": "suno-song-id-1",
        "title": "Przykładowy utwór",
        "generation_type": "generate",
        "completed_at": 1784000000,
        "created_at": 1783999000,
        "audio_url": "https://example.com/audio.mp3",
        "model_name": "suno-v6",
        "authorization": {
          "selectable": true
        }
      }
    ]
  }
}

Gdy authorization.selectable=false, odpowiedź wyjaśnia przyczynę w reason_code i reason. Utwory, dla których certyfikat już wydano, zwracają także certificate_id i certificate_no.

2. Generowanie certyfikatu

Punkt końcowy: POST /api/music/authorization/certificates

Parametry treści

Parametr Typ Wymagany Uwagi
song_ids string[] tak Lista prawdziwych Suno Song ID do licencjonowania
confirm_risk_terms boolean tak Musi mieć wartość true — potwierdzenie zakresu licencji i warunków ryzyka

Przykładowe żądanie

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

Przykładowa odpowiedź

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

W udanej odpowiedzi status wynosi issued. Jeśli renderowanie PDF się nie powiedzie, certyfikat zostaje oznaczony jako failed, a powiązane utwory można ponownie zgłosić po rozwiązaniu problemu.

3. Historia certyfikatów

Punkt końcowy: GET /api/music/authorization/certificates

Parametry zapytania

Parametr Typ Wymagany Domyślnie Uwagi
p number nie 1 Numer strony
page_size number nie wartość domyślna systemu Elementów na stronę, maksymalnie 100
q string nie - Szukaj po numerze certyfikatu lub zamaskowanym nazwisku licencjobiorcy

Przykładowe żądanie

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

Struktura odpowiedzi

data odpowiedzi to obiekt stronicowany zawierający page, page_size, total i items. Każdy element items to podsumowanie certyfikatu i zawiera migawkę utworów tego certyfikatu.

4. Szczegóły certyfikatu

Punkt końcowy: GET /api/music/authorization/certificates/:id

Parametr ścieżki id to numeryczny identyfikator certyfikatu. Punkt końcowy pozwala uzyskać dostęp wyłącznie do certyfikatów użytkownika bieżącego klucza API.

Przykładowe żądanie

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

Struktura odpowiedzi

W przypadku powodzenia zwracane jest data.certificate, którego pola obejmują numer certyfikatu, status, zamaskowane dane licencjobiorcy, czas wydania, sumę kontrolną PDF, adres pobierania i migawkę licencjonowanych utworów.

5. Pobieranie PDF certyfikatu

Punkt końcowy: GET /api/music/authorization/certificates/:id/download

Pobierać można wyłącznie certyfikaty o statusie issued. Żądanie pobrania nadal wymaga ważnego klucza API i można pobierać tylko własne certyfikaty.

Przykładowe żądanie

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

Udana odpowiedź to strumień pliku application/pdf; nazwa pliku wynika z Content-Disposition backendu.

Częste przyczyny niepowodzenia

Sytuacja Sugerowane postępowanie
Klucz API jest nieprawidłowy lub go brakuje Sprawdź nagłówek Authorization: Bearer YOUR_API_KEY
Tożsamość licencyjna nie jest jeszcze powiązana Najpierw dokończ powiązanie tożsamości na stronie certyfikatów w Create UI
Skumulowane doładowania są niewystarczające Ponów próbę po osiągnięciu progu dla osoby fizycznej lub firmy
Warunki ryzyka nie zostały potwierdzone Ustaw confirm_risk_terms na true
Utworu nie można licencjonować Sprawdź reason_code i reason zwrócone przez listę utworów
Utwór ma już certyfikat Użyj zwróconego certificate_id, aby sprawdzić istniejący certyfikat
PDF nie może zostać teraz wygenerowany Ponów próbę później; nieudany zapis nie zużywa uprawnienia utworu

Uwagi

Uzyskaj klucz API

Po rejestracji utwórz klucz API w konsoli. Każde generowanie kosztuje 0,6 ¥ i zwraca 2 utwory, pobierania są nieograniczone, a numer telefonu nie jest wymagany.

Pobierz klucz API Powrót do przeglądu