API de certificado de licença comercial de música

Atualizado em 2026-09-18 · equipe Suno-API

Descrição do endpoint

Os endpoints de certificado de licença comercial de música permitem listar as músicas que o usuário da chave de API atual pode licenciar, gerar um certificado em PDF, consultar o histórico de certificados e baixar os arquivos emitidos.

Todos os endpoints usam a New API Key de forma uniforme:

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Endereço base:

https://www.suno-api.io

Pré-requisitos

0. Elegibilidade e identidade de licenciamento

Antes de emitir um certificado é preciso consultar a elegibilidade e vincular a identidade. Os dois endpoints são gratuitos.

0.1 Consultar elegibilidade e identidade

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
    }
  }
}
Campo Tipo Observações
identity.exists boolean Se a identidade de licenciamento já está vinculada; quando é true, a informação de identidade mascarada é devolvida
eligibility.current_amount number Valor de recarga acumulada atual (yuan)
eligibility.personal_required_amount number Limite de recarga acumulada exigido para licença individual
eligibility.company_required_amount number Limite de recarga acumulada exigido para licença de empresa
eligibility.personal_eligible / company_eligible boolean Se a elegibilidade correspondente é atendida no momento
stats.authorized_song_count / certificate_count number Número de músicas licenciadas e de certificados emitidos

0.2 Vincular a identidade de licenciamento

Endpoint: POST /api/music/authorization/identity

{
  "identity_type": "personal",
  "legal_name": "João Silva",
  "id_number": "110101199001010000",
  "contact_name": "João Silva",
  "phone": "13800000000",
  "email": "user@example.com",
  "address": "Rua Augusta 123, São Paulo",
  "confirm_locked": true
}
Parâmetro Tipo Obrigatório Observações
identity_type string sim personal ou company
legal_name string sim Nome da pessoa
id_number string sim Número do documento (armazenado criptografado no servidor; os endpoints comuns devolvem apenas o resultado mascarado)
company_name string obrigatório para empresas Nome da empresa
credit_code string obrigatório para empresas Código de crédito social unificado
contact_name string sim Pessoa de contato
phone string sim Telefone de contato
email string sim E-mail de contato
address string não Endereço de contato
confirm_locked boolean sim Confirma que a informação de identidade fica bloqueada; enviar true significa aceitar que ela não poderá ser alterada por você após a vinculação

A resposta devolve a informação de identidade mascarada: {"identity": {...}}. Após uma vinculação bem-sucedida, confirme com o endpoint context que identity.exists passou a true e só então chame os endpoints de lista de músicas e de emissão. Se precisar alterar a informação de identidade, fale com o atendimento.

1. Listar músicas licenciáveis

Endpoint: GET /api/music/authorization/songs

Parâmetros de query

Parâmetro Tipo Obrigatório Padrão Observações
p number não 1 Número da página
page_size number não padrão do sistema Itens por página, máximo 100
q string não - Buscar por título, prompt ou Suno Song ID exato
status string não all all, selectable, authorized ou unavailable

Exemplo de requisição

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

Exemplo de resposta

{
  "success": true,
  "message": "",
  "data": {
    "page": 1,
    "page_size": 20,
    "total": 1,
    "items": [
      {
        "task_id": 10001,
        "suno_song_id": "suno-song-id-1",
        "title": "Música de exemplo",
        "generation_type": "generate",
        "completed_at": 1784000000,
        "created_at": 1783999000,
        "audio_url": "https://example.com/audio.mp3",
        "model_name": "suno-v6",
        "authorization": {
          "selectable": true
        }
      }
    ]
  }
}

Quando authorization.selectable=false, a resposta explica o motivo por meio de reason_code e reason. Músicas que já têm certificado também devolvem certificate_id e certificate_no.

2. Gerar um certificado

Endpoint: POST /api/music/authorization/certificates

Parâmetros do body

Parâmetro Tipo Obrigatório Observações
song_ids string[] sim Lista de Suno Song ID reais a licenciar
confirm_risk_terms boolean sim Precisa ser true, confirmando o escopo da licença e os termos de risco

Exemplo de requisição

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

Exemplo de resposta

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

Em uma resposta bem-sucedida status é issued. Se a renderização do PDF falhar, o certificado é marcado como failed e as músicas relacionadas ainda podem ser reenviadas depois que o problema for corrigido.

3. Consultar o histórico de certificados

Endpoint: GET /api/music/authorization/certificates

Parâmetros de query

Parâmetro Tipo Obrigatório Padrão Observações
p number não 1 Número da página
page_size number não padrão do sistema Itens por página, máximo 100
q string não - Buscar por número do certificado ou nome mascarado do licenciado

Exemplo de requisição

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

Estrutura da resposta

O data da resposta é um objeto paginado com page, page_size, total e items. Cada item de items é um resumo de certificado e inclui o snapshot de músicas daquele certificado.

4. Consultar detalhes do certificado

Endpoint: GET /api/music/authorization/certificates/:id

O parâmetro de caminho id é o ID numérico do certificado. O endpoint permite acesso apenas aos certificados do usuário da chave de API atual.

Exemplo de requisição

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

Estrutura da resposta

Em caso de sucesso devolve data.certificate, cujos campos incluem número do certificado, status, informação mascarada do licenciado, hora de emissão, checksum do PDF, endereço de download e o snapshot das músicas licenciadas.

5. Baixar o PDF do certificado

Endpoint: GET /api/music/authorization/certificates/:id/download

Só certificados com status issued podem ser baixados. A requisição de download ainda exige uma chave de API válida, e você só pode baixar os seus próprios certificados.

Exemplo de requisição

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

Uma resposta bem-sucedida é um fluxo de arquivo application/pdf; o nome do arquivo segue o Content-Disposition do backend.

Causas comuns de falha

Cenário Sugestão de tratamento
A chave de API é inválida ou não foi enviada Verifique o cabeçalho Authorization: Bearer YOUR_API_KEY
A identidade de licenciamento ainda não foi vinculada Conclua antes a vinculação na página de certificados do Create UI
Recarga acumulada insuficiente Tente novamente após atingir o requisito individual ou de empresa
Os termos de risco não foram confirmados Defina confirm_risk_terms como true
A música não pode ser licenciada Veja reason_code e reason devolvidos pela lista de músicas
A música já tem certificado Use o certificate_id devolvido para consultar o certificado existente
O PDF não pode ser gerado no momento Tente mais tarde; um registro com falha não consome a elegibilidade da música

Observações

Obter uma chave de API

Crie uma chave de API no console após o cadastro. Cada geração custa ¥0,6 e devolve 2 faixas, os downloads são ilimitados e não é preciso número de telefone.

Obter chave de API Voltar à visão geral